![見出し画像](https://assets.st-note.com/production/uploads/images/84172013/rectangle_large_type_2_b606fe27c1a8230d8527d4dda60fb6da.jpeg?width=1200)
pandasの覚書①(csvファイル読込、指定カラムの取得)
pandasの個人的な覚書です。
ライブラリのインポート
import pandas as pd
import numpy as np
csvファイルの読み込み(read_csv)
df = pd.read_csv('パス名/ファイル名.csv' ,encoding='cp932')
encodingはデフォルト(省略した場合)はutf-8で、utf-8ではないファイルに対しては文字化けするのではなくエラーUnicodeDecodeErrorになる。
個人的に使うデータがcp932なのでここではこちらを覚えとして記載します。
カラム名の一覧表示(columns)
df.columns
#Index(['商品', '数量', '単価', '金額'], dtype='object')
指定した行数を表示(head() tail())
df.head(8)
#
商品 数量 単価 金額
0 リンゴA 18 400 7200
1 バナナC 12 260 3120
2 メロンA 43 1000 43000
3 イチゴA 21 600 12600
4 リンゴB 44 430 18920
5 バナナA 21 200 4200
6 メロンA 1 1000 1000
7 イチゴC 244 660 161040
df.tail(3)
#
商品 数量 単価 金額
22 メロンA 442 1000 442000
23 イチゴB 645 630 406350
24 リンゴA 5 400 2000
引数を指定すると上から指定した行数が表示される
(tail()の場合、下から指定した行数)
インデックスを振り直す(set_index() , index)
df = df.set_index(np.arange(1, len(df)+1))
#または
df.index = np.arange(1, len(df)+1)
print(df)
#
商品 数量 単価 金額
1 リンゴA 18 400 7200
2 バナナC 12 260 3120
3 メロンA 43 1000 43000
4 イチゴA 21 600 12600
5 リンゴB 44 430 18920
・
・
・
インデックスを指定しない場合は0から連番で割り振られるので、見やすいように1から連番を振り直す。
numpyのarangeを使用。len(df)で行数を取得。
指定したカラムを取得([[" カラム名"]])
df[['商品']].head()
#
商品
1 リンゴA
2 バナナC
3 メロンA
4 イチゴA
5 リンゴB
#複数の場合
df[['商品','数量']].head()
#
商品 数量
1 リンゴA 18
2 バナナC 12
3 メロンA 43
4 イチゴA 21
5 リンゴB 44
テスト用データ
この記事が気に入ったらサポートをしてみませんか?