Pandas DataFrame用法总结

1、将某一列满足条件的数据的所在行提取出来

df_ori = pd.read_excel('F:\IVF\data\data_add_yuejing_time\data_arrange_no_null23.xlsx')
df_new = df_ori[df_ori.iloc[:,-2]>=0.6] #将某一列满足条件(>=0.6)的数据行提取出来
df_new.to_excel('df_new.xlsx',index=False)

2、新建一个dataframe,向dataframe对象中添加新的行,如果添加的列名不在dataframe对象中,将会被当作新的列进行添加

data = pd.DataFrame(columns=[])
a = {"x": 1, "y": 2}
data = data.append(a, ignore_index=True) #a的位置数据类型也可以是DataFrame、series、dict、list
print(data)

 

3、从dataframe中提取想要的某几列(以下两种方式都可实现)

(1)

columns_you_want = ['x1', 'x2', 'x3', 'x4', 'x5']
end_column = ['y1']

train_input = df_train[columns_you_want]
train_output = df_train[end_column]

(2)

train_input = df_train.loc[:,df_train.columns!='y1']
train_output = df_train.loc[:,'y1']

4、 将dataframe中的某几列特征转换成one_hot编码

 

Pandas DataFrame用法总结_第1张图片

 

注意:

(1)predix一定要保证包含df中所有除数字之外的列名,比如C列都是数字,在predix就不包括,但A列和B列必填,只填A或B都不行;

(2)DataFrame里面不会对数字列进行One_hot编码,Series里的数字会按照one-hot进行编码(dataframe与series之间的关系:如果查看dataframe的某一列,返回的就是series);

Pandas DataFrame用法总结_第2张图片

(3)特征的维度数量会有所增加

5、合并多个dataframe

pd.concat([df_new,bf_new],axis=1)#从列方向上合并,注意列与列之间在行方向上的index必须一致才能合并

pd.concat([df_new,bf_new],axis=0)#从行方向上合并,注意合并的时候会出现index重复的情况,可以在后面加上参数ignore_index=True

6、向原有的dataframe增加新的一列

 

Pandas DataFrame用法总结_第3张图片

7、删除dataframe中的某些列

df.drop(['A','B'],axis=1)

8、根据某列去重

temp=df_ori.drop_duplicates(subset=['基本信息|P_ID','基本信息|O_ID'],keep='first')

9、dataframe类型的数据在数据标准化fit_transform后丢失列名后怎么回到dataframe

Pandas DataFrame用法总结_第4张图片

你可能感兴趣的:(数据分析)