Pandas数据输出
数据输出
目录
数据合并
1 merge()方法
2 concat()方法
数据移位
数据转换
1 DataFrame转换为字典
2 DataFrame转换为列表
3 DataFrame转换为元组
4 DataFrame转换为HTML网页格式
数据导出
1 导出为.xlsx文件
2 导出为.csv文件
1. 数据合并
1.1 merge()方法
按照列名相同的列进行合并
1 |
|
- 通过索引进行合并
df3 = pd.merge(df1, df2, right_index=True, left_index=True)
- 通过某一相同列进行合并
df3 = pd.merge(df1, df2, on='same_column')
- 当表格记录数不同时,合并后保存全部数据
df3 = pd.merge(df1, df2, on='same_column', how='outer')
1.2 concat()方法
1 |
|
- 相同字段的表首尾相接
dfs = [df1, df2, df3]
不显示表名result = pd.concat(dfs)
显示表名result = pd.concat(dfs,keys=['df1_name', 'df2_name', 'df3_name'])
- 横向表合并
两张表必须至少有一列的列名是相同的
填充缺失值result = pd.concat([df1, df2], axis=1)
不填充缺失值result = pd.concat([df1, df2], axis=1, join='inner')
指定主表result = pd.concat([df1,df2], axis=1, join_axes=[df.index])
2. 数据移位
数据移位就是其他数据保持不变,索引也不变,但是被移位后的某行或者某列的数据的索引值为原索引+periods(移动步伐)。
df['shifted_column'].shift(periods=1, freq=None, axis=0)
period可正可负
axis=1表示行,axis=0表示列
3. 数据转换
3.1 DataFrame转换为字典
使用to_dict()方法将表格转换为字典,其中表格的索引为字典的键,其他列为字典的值。
my_dict = df.to_dict()
3.2 DataFrame转换为列表
将表格中的某一列转换为列表
list1 = df1['column1'].values.tolist()
3.3 DataFrame转换为元组
按行读取DataFrame数据后,使用tuple()函数将其转换为元组。
tuples = [tuple(x) for x in df1.values]
3.4 DataFrame转换为HTML网页格式
df.to_html('my_html.html', header=True, index=False)
数据导出
4.1 导出为.xlsx文件
1 |
|
df.to_excel('my_excel.xlsx')
df.to_excel('my_excel', sheet_name='df')
df.to_excel('my_excel', sheet_name='df', startrow=2)
df.to_excel('my_excel', sheet_name='df', freeze_pandas=(1,1))
df.to_excel('my_excel',sheet_name='column1_name', columns=['cloumn1'])
4.2 导出为.csv文件
1 |
|
df.to_csv('my_csv.csv')
df.to_csv('my_csv.csv',sep='?')
df.to_csv('my_csv.csv',na_rep='NA')
df.to_csv('my_csv.csv', float_format='%.2f')
df.to_vsc('my_csv.csv', columns=['column1'])
df.to_csv('my_csv.csv', header=False, index=False)
– 既不保留列名,也不保留行索引
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!