我写了一个小脚本,从我正在使用的文本文件中提取一些不必要的列。我不知道如何在不丢失数据的情况下将其打印到文本文件中。
import pandas as pd
from pandas import *
df = pd.read_table('newclass.txt', sep=r'\s+')
newcol=['A']
df = df[newcol]
for i in df:
print df
但是这只会给出一个看起来像的文本文件, (例如)
value1
value2
value3
value4
...
value###
value###
...其中###只是列表末尾的较高值。如您所见,它无法显示所有值(列表的中间)。如何获得所有值的打印输出?
感谢。
答案 0 :(得分:1)
您可以在数据框架上使用to_csv
(您只需要指定您想要一个空格作为分隔符):
path = "fixedfile.txt"
df.to_csv(path, sep=" ", index=False)
答案 1 :(得分:0)
最初我的问题是我获得了所有数据的最小化输出,其次我不希望在我的第一列前面有索引。我的解决方案:
import pandas as pd
from pandas import *
df = pd.read_table('newclass.txt',sep='\s+')
newcol=['Mon-id']
df = df[newcol]
print df.to_string(index=False)
根据文档,pandas会自动减少输出,除非您使用.to_string
命令指定它。