DataFrame的一些用法
重度健忘症患者记录用。
加载csv文件
data = pd.DataFrame(pd.read_csv("data.csv"))
导出csv文件
data.to_csv("data.csv", index=False)
丢弃不需要的列
data.drop(["COL1","COL2","COL3"], inplace=True, axis=1)
获取所有的列名
[column for column in data]
统计某列中各个值出现的次数(忽略空值)
data["COL1"].value_counts()
按列筛选数据
data = data[(data.COL1 == 0) & (data.COL2 != 0) & (data.COL3.notna())]
获取各列数据类型
data.dtypes
去除有空值的数据行
data.dropna(inplace=True)
重置索引
data.reset_index(drop=True, inplace=True)
获取有空值的行
data[data.isnull().values == True]
逐行处理某列数据
data["COL1"] = data.apply(lambda x: 0 if x["COL1"] < 0 else x["COL1"], axis=1)
数据切片
data = data.loc[2:7, ["COL2","COL3"]]
获取某行某列的值
data.at[0, "CLO1"]
转换列数据类型
data.COL1 = data.COL1.astype("int")
替换某些值
data = data.replace({None:None})
去重
data = data.drop_duplicates()
获取数据库查询结果
cursor.execute(sql)
columns = [tuple[0] for tuple in cursor.description]
data = pd.DataFrame(cursor.fetchall(), columns=columns)
修改列名
df.columns = ["COLA","COLB","COLC"]
将所有空值替换为None
data = data.replace({None: None})