我正在尝试创建一个程序,将文本文件中的数据收集到一个文本文件中。由于某种原因,我有很多问题。一个最终输出文件由10个不同的启动文件组成(Serial 1-10.txt)。这些数据需要放在不同列的文件(text或csv)中,然后再转到下一个包含十个串行文件的Data文件夹。
以下代码在每个最终文本文件中输出一个长列,而不是11个不同的列(计算"编号"列)。
for z in datarange:
f = open('/home/pi/Desktop/Newdata/Data' + str(z) + '.csv', 'a')
# print(f)
therange = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
thelist = (folder_list + "Data" + str(z))
for i in therange:
lines = open(thelist + "/Serial" + str(i) + ".txt", 'r+')#, encoding='utf-8') #open that same text file (reading priviledges
thedata = lines.readline()
mylist = [int (x) for x in thedata.split(',') if x.strip().isdigit()]
#locals()["text" + str(i)] = pd.DataFrame(mylist)
df = pd.DataFrame(mylist)
f.write(str(df))
我也试过这样的事情:(得到相同的结果。一长列。
df = { 'Column1': [(text1)], 'Column2': [(text2)],
'Column3': [(text4)],'Column5': [(text5)],
'Column6': [(text6)], 'Column7': [(text7)], 'Column8': [(text8)],
'Column9': [(text9)], 'Column10': [(text10)]}
f.write(str(df))
数据输出摘要:
Column1
0 145
1 146
2 123
3 154
.
.
.
287 140
Column2
0 145
1 144
.
.
.
287 128
Column3
依旧......
任何建议或事情要尝试?
答案 0 :(得分:0)
万一有人遇到类似的问题,这就是我最终使用的内容。这适用于我的应用程序。我想发布它,因为它适合我的问题的答案,最终得到我想要它做的事。
问题代码的一部分: 对于数据范围中的z: f = open('/ home / pi / Desktop / Newdata / Data'+ str(z)+'。txt','a')
therange = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
thelist = (folder_list + "Data" + str(z))
for i in therange:
lines = open(thelist + "/Serial" + str(i) + ".txt", 'r+')#, encoding='utf-8') #open that same text file (reading priviledges
thedata = lines.readline()
mylist = [int (x) for x in thedata.split(',') if x.strip().isdigit()]
locals()["text" + str(i)] = mylist
if i == 10:
try:
df = pd.DataFrame({ 'Column1': text1, 'Column2': text2, 'Column3': text4, 'Column5': text5,
'Column6': text6, 'Column7': text7, 'Column8': text8,
'Column9': text9, 'Column10': text10})
pd.set_option('max_rows', 288)
pd.set_option('max_colwidth', 11)
data = df.to_string(index=False)
f.write(str(data))
except:
os.remove('/home/pi/Desktop/Newdata/Data' + str(z) + '.txt')
pass
我想要完成的任务(平均行数),使用此设置。然后,我能够对所创建的文本文件的每一行进行求和并进行除法,并且还涉及到达每一行的循环。 **如果放在csv文件中,csv输出中的“Column1 Column2 ...和下面的数据”全部在“一列”中。所以,我决定使用文本文件。