- 指定列进行排序
df=df.sort_values(by='col_name')
- 重命名列名
df.rename(columns={'ori_col_name': 'new_col_name'}, inplace=True)
- 按照原有的列生成一个新的df
df = df.reindex(columns=["col_name1", "col_name2"])
- 根据指定条件删除df一行
df = df.drop(df[df['col_name']=='val'].index)
- 统计某一列中一个值出现的次数
sub_df = df["col_name"].value_counts(ascending=True).reset_index(name='counts')
sub_df.rename(columns={'index':'col_name'},inplace=True)
- 对一列上的值进行累加
df['cumsum'] = df['cnts'].cumsum()
- 将一个包含多个元素的列分割成一个列表或者拆分成多列
df = pd.DataFrame({'multi_vals':['23-45','45-67']})
df['val_sp'] = df['multi_vals'].str.split('-')
'''
multi_vals val_sp
23-45 [23,45]
45-67 [45,67]
'''
df['val1'], df['val2'] = df['multi_vals'].str.split('-', 1).str
'''
multi_vals val_sp val1 val2
23-45 [23,45] 23 45
45-67 [45,67] 45 67
'''
- 将两个df连接在一起
pd.merge(df1, df2, on="key_col_name", how="left")
how关键字指定按何种方式连接。
left
:左外连接。左边的df的所有数据保留,右边的df只保留和左边的key_col_name相等的行。right
:右外连接。类比左外连接。outer
:全外连接inner
:内连接cross
:交叉连接