logo

パンダは Python で CSV を読み取ります

CSV ファイルはカンマ区切りファイルです。 CSV ファイルのデータにアクセスするには、データ フレームの形式でデータを取得する Pandas の関数 read_csv() が必要です。

read_csv() の構文

ここにあります パンダはCSVを読み取ります 構文とそのパラメータ。

構文: pd.read_csv (filepath_or_buffer、sep=’ ,’ 、header=’infer’、index_col=None、usecols=None、engine=None、skiprows=None、nrows=None)



パラメーター:

  • ファイルパスまたはバッファ : csv ファイルの場所。ファイルの任意の文字列パスまたは URL を受け入れます。
  • 9月 : 区切り文字を表し、デフォルトは「,」です。
  • ヘッダ : int、int のリスト、列名として使用する行番号、およびデータの開始を受け入れます。名前が渡されない場合、つまり header=None の場合、最初の列は 0 として表示され、2 番目の列は 1 として表示されます。
  • usecols : CSV ファイルから選択した列のみを取得します。
  • 狭い : データセットから表示される行数。
  • インデックス列 : None の場合、レコードとともにインデックス番号は表示されません。
  • スキップロウ : 新しいデータ フレームで渡された行をスキップします。

Pandas read_csv を使用して CSV ファイルを読み取る

この関数を使用する前に、 パンダ ライブラリにある場合、Pandas を使用して CSV ファイルをロードします。

パイソン3

複数のテーブルから SQL を選択する




# Import pandas> import> pandas as pd> # reading csv file> df>=> pd.read_csv(>'people.csv'>)> print>(df.head())>

>

>

出力:

 First Name Last Name Sex Email Date of birth Job Title  0 Shelby Terrell Male [email protected] 1945-10-26 Games developer  1 Phillip Summers Female [email protected] 1910-03-24 Phytotherapist  2 Kristine Travis Male [email protected] 1992-07-02 Homeopath  3 Yesenia Martinez Male [email protected] 2017-08-03 Market researcher 4 Lori Todd Male [email protected] 1938-12-01 Veterinary surgeon>

使用する 9月 read_csv() 内

この例では、CSV ファイルを取得し、いくつかの特殊文字を追加して、 9月 パラメータが機能します。

Python3




# sample = 'totalbill_tip, sex:smoker, day_time, size> # 16.99, 1.01:Female|No, Sun, Dinner, 2> # 10.34, 1.66, Male, No|Sun:Dinner, 3> # 21.01:3.5_Male, No:Sun, Dinner, 3> #23.68, 3.31, Male|No, Sun_Dinner, 2> # 24.59:3.61, Female_No, Sun, Dinner, 4> # 25.29, 4.71|Male, No:Sun, Dinner, 4'> # Importing pandas library> import> pandas as pd> # Load the data of csv> df>=> pd.read_csv(>'sample.csv'>,> >sep>=>'[:, |_]'>,> >engine>=>'python'>)> # Print the Dataframe> print>(df)>

>

>

出力:

 totalbill tip Unnamed: 2 sex smoker Unnamed: 5 day time Unnamed: 8 size  16.99 NaN 1.01 Female No NaN Sun NaN Dinner NaN 2 10.34 NaN 1.66 NaN Male NaN No Sun Dinner NaN 3 21.01 3.50 Male NaN No Sun NaN Dinner NaN 3.0 None 23.68 NaN 3.31 NaN Male No NaN Sun Dinner NaN 2 24.59 3.61 NaN Female No NaN Sun NaN Dinner NaN 2 25.29 NaN 4.71 Male NaN No Sun NaN Dinner NaN 4>

read_csv() での usecols の使用

ここでは、[名、性別、電子メール] の 3 つの列のみをロードするように指定し、ヘッダー 0 をデフォルトのヘッダーとして使用します。

Python3




df>=> pd.read_csv(>'people.csv'>,> >header>=>0>,> >usecols>=>[>'First Name'>,>'Sex'>,>'Email'>])> # printing dataframe> print>(df.head())>

>

>

出力:

 First Name Sex Email 0 Shelby Male [email protected] 1 Phillip Female [email protected] 2 Kristine Male [email protected] 3 Yesenia Male [email protected] 4 Lori Male [email protected]>

read_csv() でのindex_col の使用

ここで使用するのは、 セックス 最初にインデックスを付けてから、 役職 インデックスの場合、ヘッダーのインデックスを単純に再作成できます。 インデックス列 パラメータ。

Python3


対称的な差



df>=> pd.read_csv(>'people.csv'>,> >header>=>0>,> >index_col>=>[>'Sex'>,>'Job Title'>],> >usecols>=>[>'Sex'>,>'Job Title'>,>'Email'>])> print>(df.head())>

>

>

出力:

 Email Sex Job Title  Male Games developer [email protected] Female Phytotherapist [email protected] Male Homeopath [email protected]  Market researcher [email protected]  Veterinary surgeon [email protected]>

read_csv() での nrows の使用

ここでは、次のようにして 5 行だけを表示します。 nrowsパラメータ

Python3




df>=> pd.read_csv(>'people.csv'>,> >header>=>0>,> >index_col>=>[>'Sex'>,>'Job Title'>],> >usecols>=>[>'Sex'>,>'Job Title'>,>'Email'>],> >nrows>=>3>)> print>(df)>

>

>

出力:

マイクロサービスのチュートリアル
 Email Sex Job Title  Male Games developer [email protected] Female Phytotherapist [email protected] Male Homeopath [email protected]>

read_csv() でのスキップロウの使用

スキップロウ CSV 内の一部の行をスキップするのに役立ちます。つまり、ここでは、skiprows で指定された行が元のデータセットからスキップされていることがわかります。

Python3




df>=> pd.read_csv(>'people.csv'>)> print>(>'Previous Dataset: '>)> print>(df)> # using skiprows> df>=> pd.read_csv(>'people.csv'>, skiprows>=> [>1>,>5>])> print>(>'Dataset After skipping rows: '>)> print>(df)>

>

>

出力:

Previous Dataset:  First Name Last Name Sex Email Date of birth Job Title  0 Shelby Terrell Male [email protected] 1945-10-26 Games developer 1 Phillip Summers Female [email protected] 1910-03-24 Phytotherapist  2 Kristine Travis Male [email protected] 1992-07-02 Homeopath  3 Yesenia Martinez Male [email protected] 2017-08-03 Market researcher 4 Lori Todd Male [email protected] 1938-12-01 Veterinary surgeon  5 Erin Day Male [email protected] 2015-10-28 Management officer  6 Katherine Buck Female [email protected] 1989-01-22 Analyst 7 Ricardo Hinton Male [email protected] 1924-03-26 Hydrogeologist  Dataset After skipping rows:   First Name Last Name Sex Email Date of birth Job Title  0 Shelby Terrell Male [email protected] 1945-10-26 Games developer 1 Kristine Travis Male [email protected] 1992-07-02 Homeopath  2 Yesenia Martinez Male [email protected] 2017-08-03 Market researcher 3 Lori Todd Male [email protected] 1938-12-01 Veterinary surgeon  4 Katherine Buck Female [email protected] 1989-01-22 Analyst 5 Ricardo Hinton Male [email protected] 1924-03-26 Hydrogeologist>