Wie funktionieren die Argumente \'levels\', \'keys\' und \'names\' in der Concat-Funktion von Pandas, um einen MultiIndex zu erstellen?

DDD
Freigeben: 2024-10-31 20:28:29
Original
516 Leute haben es durchsucht

How do the 'levels', 'keys', and 'names' arguments in Pandas' concat function work to create a MultiIndex?

Was sind die „Ebenen“, „Schlüssel“ und Namensargumente in der Concat-Funktion von Pandas?

1. Einführung

Die Funktion pandas.concat() ist ein leistungsstarkes Werkzeug zum Kombinieren mehrerer Serien oder DataFrames entlang einer angegebenen Achse. Es bietet eine Reihe optionaler Argumente, darunter Ebenen, Schlüssel und Namen, die zum Anpassen des resultierenden MultiIndex verwendet werden können.

2. Ebenen

Das Argument „Ebenen“ wird verwendet, um die Ebenen des resultierenden MultiIndex anzugeben. Standardmäßig leitet Pandas die Ebenen aus dem Schlüsselargument ab. Sie können die abgeleiteten Ebenen jedoch überschreiben, indem Sie eine Liste von Sequenzen an das Ebenenargument übergeben.

Zum Beispiel verkettet der folgende Code zwei DataFrames entlang der Zeilen und verwendet dabei einen MultiIndex mit zwei Ebenen:

<code class="python">df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
df2 = pd.DataFrame({'C': [5, 6], 'D': [7, 8]})

df = pd.concat([df1, df2], keys=['df1', 'df2'], levels=['level1', 'level2'])

print(df)

      level1 level2  A  B  C  D
0    df1     1    1  3  5  7
1    df1     2    2  4  6  8</code>
Nach dem Login kopieren

In diesem Beispiel ist das Level-Argument eine Liste mit zwei Sequenzen: ['level1', 'level2']. Dadurch wird ein MultiIndex mit zwei Ebenen erstellt: „Level1“ und „Level2“. Das Schlüsselargument ist eine Liste mit zwei Zeichenfolgen: ['df1', 'df2']. Dadurch werden die Werte „df1“ und „df2“ der ersten bzw. zweiten Ebene des MultiIndex zugewiesen.

3. Schlüssel

Das Schlüsselargument wird verwendet, um die Schlüssel für den resultierenden MultiIndex anzugeben. Standardmäßig verwendet Pandas die Indexbezeichnungen der Eingabeobjekte als Schlüssel. Sie können jedoch die Standardschlüssel überschreiben, indem Sie eine Werteliste an das Schlüsselargument übergeben.

Der folgende Code verkettet beispielsweise zwei DataFrames entlang der Zeilen und verwendet dabei einen MultiIndex mit drei Ebenen:

<code class="python">df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
df2 = pd.DataFrame({'C': [5, 6], 'D': [7, 8]})

df = pd.concat([df1, df2], keys=[('A', 'B'), ('C', 'D')])

print(df)

    level1 level2  A  B  C  D
0     A      B    1  3  5  7
1     C      D    2  4  6  8</code>
Nach dem Login kopieren

In diesem Beispiel ist das Schlüsselargument eine Liste von zwei Tupeln: [('A', 'B'), ('C', 'D')]. Dadurch wird ein MultiIndex mit drei Ebenen erstellt: „Level1“, „Level2“ und „Level3“. Das Schlüsselargument weist der ersten Ebene des MultiIndex die Werte „A“ und „B“ und der zweiten Ebene des MultiIndex die Werte „C“ und „D“ zu.

4. Namen

Das Namensargument wird verwendet, um die Namen der Ebenen des resultierenden MultiIndex anzugeben. Standardmäßig verwendet Pandas die Namen der Indexbezeichnungen der Eingabeobjekte als Namen der Ebenen. Sie können jedoch die Standardnamen überschreiben, indem Sie eine Liste von Zeichenfolgen an das Namensargument übergeben.

Der folgende Code verkettet beispielsweise zwei DataFrames entlang der Zeilen und verwendet dabei einen MultiIndex mit zwei Ebenen:

<code class="python">df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
df2 = pd.DataFrame({'C': [5, 6], 'D': [7, 8]})

df = pd.concat([df1, df2], keys=['df1', 'df2'], names=['level1', 'level2'])

print(df)

      level1 level2  A  B  C  D
0    df1     1    1  3  5  7
1    df1     2    2  4  6  8</code>
Nach dem Login kopieren

In diesem Beispiel ist das Namensargument eine Liste mit zwei Zeichenfolgen: ['level1', 'level2']. Dadurch werden der ersten bzw. zweiten Ebene des MultiIndex die Namen „level1“ und „level2“ zugewiesen.

Das obige ist der detaillierte Inhalt vonWie funktionieren die Argumente \'levels\', \'keys\' und \'names\' in der Concat-Funktion von Pandas, um einen MultiIndex zu erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!