Pandas读取数据、导出csv、消除重复、按值查询
程序员文章站
2022-05-09 15:13:45
...
1、首先读取数据
样本数据
import pandas as pd
path = '/data/a.csv'#读取数据
df = pd.read_csv(path, encoding='gbk',usecols=[0,4,6])#选取第1,5,7列
frame = pd.DataFrame(df)
print(frame)
输出
2、筛选数据(按列筛选)
df1 = frame[['Observation','Subject']]
print(df1)
3、消除重复(按列筛选)
(1)默认按所有属性消除重复
df2 = df1.drop_duplicates(subset=None, keep='first', inplace=False)
#subset是根据字段去除重复,多个字段就写成列表形式,默认是所有列
#keep first就是保留第一个,last就是最后
#inplace 默认为False,不直接进行修改
print(df2)
(2)指定某属性消除
df2 = df1.drop_duplicates(subset='Observation', keep='first', inplace=False)
print(df2)
3、将数据存为list
df2为上方图片
list1 = []
for item in df2['Observation']:
list1.append(item)
print(list1)
4、按值查询
(1)单属性筛选
import pandas as pd
path = '/data/a.csv'#读取数据
df = pd.read_csv(path, encoding='gbk',usecols=[0,4,6])
frame = pd.DataFrame(df)
frame_2 = frame[(frame.Observation=='2018/1/22')]
print(frame_2)
(2)多属性筛选
frame_2 = frame[(frame.Observation=='2018/1/22')&(frame.Behavior2 =='C')]
print(frame_2)
5、导出数据,csv文件以逗号分隔
dataframe = pd.DataFrame({'Observation':list1,'Subject':list2,'Behavior2':list3})
dataframe.to_csv(path2,index=False,sep=',')
print("---------success---------")
看一下list1,2,3
导出的文件