pandas.concat () 函數是一種多功能工具,用於將多個 Series 或 DataFrame 物件組合成一個統一的 DataFrame。它提供了多個用於自訂串聯過程的參數,包括等級、鍵和名稱參數。本指南對這些參數進行了全面的解釋,並透過範例示範了它們的用法。
pandas.concat() 函數的語法如下:
<code class="python">pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, copy=True)</code>
以下程式碼片段顯示了沿著索引軸連接兩個DataFrame 的簡單範例:
<code class="python">import pandas as pd df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) df2 = pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]}) df = pd.concat([df1, df2]) print(df)</code>
輸出:
A B 0 1 4 1 2 5 2 3 6 3 7 10 4 8 11 5 9 12
keys 參數可讓您指定標量值或元組的列表,以在產生的DataFrame 中建立MultiIndex 結構。鍵列表中的每個元素對應於要連接的物件之一。
例如,考慮以下程式碼片段:
<code class="python">keys = ['df1', 'df2'] df = pd.concat([df1, df2], keys=keys) print(df)</code>
輸出:
A B df1 0 1 4 1 2 5 2 3 6 df2 3 7 10 4 8 11 5 9 12
鍵參數在索引中建立一個新級別,名為「keys」。這使您可以輕鬆識別哪些行屬於哪個 DataFrame。
levels 參數用於指定要使用的 MultiIndex 的特定等級。它需要一個序列列表,每個序列代表 MultiIndex 中的一個層級。
例如,以下程式碼指定MultiIndex 應有兩個等級:
<code class="python">levels = [['df1', 'df2'], ['A', 'B']] df = pd.concat([df1, df2], keys=keys, levels=levels) print(df)</code>
輸出:
A B df1 A 0 1 4 B 1 2 5 C 2 3 6 df2 A 3 7 10 B 4 8 11 C 5 9 12
levels 參數為創建更複雜的MultiIndex 結構提供了靈活性。
names 參數可讓您為 MultiIndex 的等級指定自訂名稱。它需要一個字串列表,每個字串代表一個層級的名稱。
<code class="python">names = ['DataFrame', 'Column'] df = pd.concat([df1, df2], keys=keys, levels=levels, names=names) print(df)</code>
輸出:
DataFrame Column A B df1 A 0 1 4 B 1 2 5 C 2 3 6 df2 A 3 7 10 B 4 8 11 C 5 9 12
名稱參數有助於在處理MultiIndex 結構時提供上下文並提高可讀性.
等級、鍵和名稱參數是自訂pandas 中串聯過程的強大工具。它們可讓您建立靈活且資訊豐富的 MultiIndex 結構,以促進資料分析和操作。透過了解這些參數的用法,您可以提高 pandas 程式設計技能並有效管理您的資料。
以上是Pandas「concat」函數中的「levels」、「keys」和「names」參數如何協助在 DataFrame 中建立和自訂 MultiIndex 結構?的詳細內容。更多資訊請關注PHP中文網其他相關文章!