↑この教材をやっています
行データからデータフレームを作る
import pandas as pd
data = [[1行目データ],[2行目データ],[3行目データ]]
データフレーム=pd.DataFrame(data)
これだけで、表が出力できる。使いこなせれば非常に便利そう。
データフレームに列名とインデックス名を設定する
df.columns = [列名のリスト]
df.index = [インデックス名のリスト]
列データから、データフレームを作る
data = {
“列名”:[列データ], “列名”:[列データ], “列名”:[列データ]
}
idx = [インデックス名のリスト]
df = pd.DataFrame(data, index=idx)
データファイルの読み込み(CSVファイル)
df = pd.read_csv(“ファイル名.csv”)
CSVファイルデータの最初の列(0列目)をインデックス化させる
df = pd.read_csv(“ファイル名.csv” , index_col=0)
ヘッダーがないCSVファイルの読み込み
df =pd.read_csv(“ファイル名.csv” , header=None)
列名が入力されているかを確認する
df.columns
インデックス名が入力されているかを確認する
df.index
データの種類を確認する
df.dtypes
データ個数を確認する
len(df)
行データを取り出す
df.iloc[行番号]
複数の行データを取り出す
df.iloc[[行番号 , 行番号 ]]
要素データを取り出す
df.iloc[行番号][“列名”]
空のデータフレームを作る
df = pd.DataFrame()
列データを追加する
df[“新列名”] = 列データ
行データを追加する
df = df.append(行データ)
列データを削除する
df.drop(“列名” , axis=1)
行データを削除する
df.drop(“行名”)
条件に合うかどうかを調べる
df[“列名”] = 値
df[“列名”] > 値
df[“列名”] < 値
条件でデータを抽出する
df = df[条件]
欠損値の個数を調べる
df.isnull().sum()
欠損値がある行を削除する
df = df.dropna()
指定した列で欠損値がある行のみを削除する
df = df.dropna(subset=[“列名”])
欠損値を平均値で埋める
dfB = dfA.fillna(dfA.mean())
欠損値を1つ前の値で埋める
dfB = dfA.fillna(method=’ffill’)
重複したデータを削除する
重複データの個数を調べる
df.duplicated().value_counts()
重複データの2つ目以降を削除する
df.drop_duplicates()
文字列の列データを整数に変換する
df[“列名”] = df[“列名”].astype(int)
カンマ付き文字列の列データのカンマを削除する
df[“列名”] = df[“列名”].str.replace(“,” , “”)
カンマ付き文字列の列データのカンマを削除し、文字列から整数にする
df[“列名”] = df[“列名”].str.replace(“,”,””).astype(int)