究極ガイド: pandas で csv ファイルを読み取る方法


CSV (カンマ区切り値) ファイルは、データを保存する最も一般的な方法の 1 つです。

幸いなことに、pandas read_csv()関数を使用すると、Python で希望するほぼすべての形式の CSV ファイルを簡単に読み取ることができます。

このチュートリアルでは、 「data.csv」という名前の次の CSV ファイルを使用して、Python で CSV ファイルを読み取るいくつかの方法を説明します。

 playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22

例 1: CSV ファイルを pandas DataFrame に読み込みます

次のコードは、CSV ファイルを pandas DataFrame に読み取る方法を示しています。

 #import CSV file as DataFrame
df = pd. read_csv ('data.csv')

#view DataFrame
df

        playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

例 2: CSV ファイルから特定の列を読み取る

次のコードは、CSV ファイルから「playerID」と「points」というラベルの付いた列のみを pandas DataFrame に読み取る方法を示しています。

 #import only specific columns from CSV file
df = pd. read_csv ('data.csv', usecols=[' playerID ',' points '])

#view DataFrame
df

	playerID points
0 1 26
1 2 19
2 3 24
3 4 22

pandas DataFrame に読み込む列インデックスを指定することもできます。

 #import only specific columns from CSV file
df = pd. read_csv (' data.csv ', usecols=[ 0,1 ])

#view DataFrame
df

        playerID team
0 1 Lakers
1 2 Mavs
2 3 Bucks
3 4 Spurs

例3:CSVファイルインポート時のヘッダー行の指定

場合によっては、ヘッダー行が CSV ファイルの最初の行ではないことがあります。

たとえば、ヘッダー行が実際には 2 行目に表示される次の CSV ファイルについて考えてみましょう。

 random,data,values
playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22

この CSV ファイルを pandas DataFrame に読み取るには、次のようにheader=1を指定します。

 #import from CSV file and specify that header starts on second row
df = pd. read_csv ('data.csv', header= 1 )

#view DataFrame
df

        playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

例 4: CSV ファイルをインポートするときに行をスキップする

CSV ファイルをインポートするときに、 skiprows引数を使用して行を簡単にスキップすることもできます。

たとえば、次のコードは、CSV ファイルをインポートするときに 2 行目を無視する方法を示しています。

 #import from CSV file and skip second row
df = pd. read_csv ('data.csv', skiprows=[ 1 ] )

#view DataFrame
df

        playerID team points
0 2 Mavs 19
1 3 Bucks 24
2 4 Spurs 22

次のコードは、CSV ファイルをインポートするときに 2 行目3 行目を無視する方法を示しています。

 #import from CSV file and skip second and third rows
df = pd. read_csv ('data.csv', skiprows=[ 1,2 ] )

#view DataFrame
df

        playerID team points
1 3 Bucks 24
2 4 Spurs 22

例 5: カスタム区切り文字を使用して CSV ファイルを読み取る

場合によっては、CSV ファイルにカンマ以外の区切り文字が含まれている場合があります。

たとえば、CSV ファイルに区切り文字としてアンダースコアが含まれているとします。

 playerID_team_points
1_Lakers_26
2_Mavs_19
3_Bucks_24
4_Spurs_22

この CSV ファイルをパンダに読み取るには、 sep引数を使用して、ファイルを読み取るときに使用する区切り文字を指定します。

 #import from CSV file and specify delimiter to use
df = pd. read_csv ('data.csv', sep=' _ ')

#view DataFrame
df

	playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

追加リソース

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

Pandasでテキストファイルを読み取る方法
Pandas で Excel ファイルを読み取る方法
Pandas で TSV ファイルを読み取る方法
Pandas で HTML テーブルを読み取る方法

コメントを追加する

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