Pandas: セルが結合された excel ファイルを読み取る方法


結合されたセルを含む Excel ファイルを pandas DataFrame に読み取ると、結合されたセルには自動的に NaN 値が入力されます。

ファイルのインポート後にこれらの NaN 値を入力する最も簡単な方法は、次のように pandas fillna()関数を使用することです。

 df = df. fillna (method=' ffill ', axis= 0 )

次の例は、この構文を実際に使用する方法を示しています。

例: Pandas でセルが結合された Excel ファイルを読み取る

さまざまなバスケットボール選手に関する情報を含む、 merged_data.xlsxという次の Excel ファイルがあるとします。

「チーム」列の値がマージされていることに注目してください。

選手 A ~ D はマーベリックスに所属し、選手 E ~ H はロケッツに所属します。

read_excel()関数を使用して、この Excel ファイルを pandas DataFrame に読み取るとします。

 import pandas as pd

#import Excel fie
df = pd. read_excel (' merged_data.xlsx ' )

#view DataFrame
print (df)

        Team Player Points Assists
0 Mavericks A 22 4
1 NaN B 29 4
2 NaN C 45 3
3 NaN D 30 7
4 Rockets E 29 8
5 NaN F 16 6
6 NaN G 25 9
7 NaN H 20 12

デフォルトでは、pandas は結合されたセルに NaN 値を入力します。

これらの各 NaN 値にチーム名を入力するには、次のようにfillna()関数を使用します。

 #fill in NaN values with team names
df = df. fillna (method=' ffill ', axis= 0 )

#view updated DataFrame
print (df)

        Team Player Points Assists
0 Mavericks A 22 4
1 Mavericks B 29 4
2 Mavericks C 45 3
3 Mavericks D 30 7
4 Rockets E 29 8
5 Rockets F 16 6
6 Rockets G 25 9
7 Rockets M 20 12

各 NaN 値には適切なチーム名が入力されていることに注意してください。

axis=0引数は、パンダに NaN 値を垂直に埋めるように指示することに注意してください。

NaN 値を列に水平に埋めるには、 axis=1を指定できます。

: pandas fillna()関数の完全なドキュメントはここで見つけることができます。

追加リソース

次のチュートリアルでは、パンダで他の一般的なタスクを実行する方法を説明します。

パンダ: Excel ファイルを読み取るときに行をスキップする方法
Pandas: Excel ファイルをインポートするときにタイプを指定する方法
パンダ: 複数の Excel シートを結合する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です