python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > DataFrame输出为csv\txt\xlsx文件

Python之DataFrame输出为csv\txt\xlsx文件问题

作者:J小白Y

这篇文章主要介绍了Python之DataFrame输出为csv\txt\xlsx文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Python DataFrame输出为csv\txt\xlsx文件

相信大家在用Python做完数据处理以及分析之后,大多数情况下需要导出到csv等文件中,方便再做其他展示操作。

小白也是一步步经历需要转到csv、txt等文件中,以导入到HIVE表中,做后续的操作。这里就来总结一下,Pyhton的DataFrame文件导出操作~

1.DataFrame导出到csv文件

其中:index是否要索引,header是否要列名,True就是需要

outputpath='d:/Users/chen_lib/Desktop/fenci.csv'
df.to_csv(outputpath,sep=',',index=False,header=False)

2.DataFrame导出到xlsx文件

outputpath='d:/Users/chen_lib/Desktop/fenci.xlsx'
df.to_excel(outputpath,sep='\t',index=False,header=False)

3.DataFrame导出到txt文件

这个和导出到csv的唯一区别,就是分隔符了,txt文件是\t作为分隔符的,csv是用,作为分隔符

df.to_csv('d:/Users/chen_lib/Desktop/fenci_result.txt',sep='\t',index=False)

如果,你处理完的数据不是DataFrame,是list的话,那只需要一句代码,就可以转为DataFrame

import pandas as pd
ret=[1,2,3,4,5]
df = pd.DataFrame(ret, columns=['colname']) 

转好之后,就可以用上面的方法,转为需要的文件类型了~

python dataframe 输出结果整行显示

在使用dataframe时遇到datafram在列太多的情况下总是自动换行显示的情况,导致数据阅读困难,

效果如下:

# -*- coding: utf-8 -*-
import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.randn(1, 20))
print df

显示效果:

         0         1         2         3         4         5         6   \
0 -1.193428 -0.870381 -0.970323 -1.062275  1.227282 -3.016298 -0.587623   

         7         8         9         10        11       12        13  \
0 -0.608017 -0.006382  0.275454 -0.073537  1.217392 -0.12844 -1.228424   

         14        15        16        17        18        19  
0 -1.153452  0.191372  0.582537  0.503437 -2.263716 -0.529881  
height has been deprecated.

解决方法

在代码中设置显示的长宽等,如下代码示例:

# -*- coding: utf-8 -*-
import numpy as np
import pandas as pd
# pd.set_option('display.height',1000)
pd.set_option('display.max_rows',500)
pd.set_option('display.max_columns',500)
pd.set_option('display.width',1000)
df = pd.DataFrame(np.random.randn(1, 20))
print df

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文