该程序运行良好,但输出不是我想要的格式。从下面的输出中可以看出,'from'和'to'数据的打印输出与'route'和'date'的打印输出不同。怎么解决这个问题?我希望日期,路线,来自和来自同一水平的输出。
date route
0 05/15/2014 C000001 from to
0 278.7 278.6
date route
0 05/15/2014 C000001 from to
0 278.6 278.5
此外,该程序应该遍历任意数量的.txt文件。但它仅在目标目录中只有一个文本文件时才有效。
def array_setter():
import os
import glob
import numpy as np
import pandas as pd
os.chdir\
('/Users/thomaswolff/Documents/Data Exports')
for file in glob.glob('*.TXT'):
reader = open(file)
headerLine = reader.readline()
mainBody = reader.readlines()
for col in mainBody:
valueList = col.split(",")
data = np.array([valueList])
arrstr = data[:,[0,1]]
arrnum = data[:,[5,6]].astype(np.float)
dstr = pd.DataFrame(arrstr,columns=['date','route'])
dnum = pd.DataFrame(arrnum,columns=['from','to'])
routes = dstr['route'] == 'C000001'
from_ = dnum['from'] > 278.5
if routes == True:
if from_ == True:
print dstr,dnum
array_setter()
答案 0 :(得分:1)
输出太窄我遇到了同样的问题并解决了它
put(假设import pandas as pd
)
pd.set_option('display.width', 130)
文件开头的某个地方。为了完整起见,我还要提到
pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 50)
有关更多选项和示例,请参阅pandas documentation
至于不遍历* .txt文件,你的“for col”循环是否只需要额外的缩进?这就是它在你的帖子中显示的缩进形式。您的“for file”循环结束,然后才开始“for col”循环。
顺便说一下,两个for循环中的缩进都显示为双缩进,不应该是。