[英]Read 4 lines of data into one row of pandas data frame
我有這樣的值的txt文件:
108,612,620,900
168,960,680,1248
312,264,768,564
516,1332,888,1596
我需要將所有這些讀入一行數據幀。
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 108 612 620 900 168 960 680 1248 312 264 768 564 516 1332 888 1596
我有很多這樣的文件,所以我會繼續向這個數據框追加行。
我相信我們需要某種正則表達式,但我無法弄明白。 現在這就是我所擁有的:
df = pd.read_csv(f,sep=",| ", header = None)
但這需要,
並且 (空格)作為分隔符,我希望它將換行作為分隔符。
首先,閱讀數據:
df = pd.read_csv('test/t.txt', header=None)
它為您提供了一個像CSV一樣的DataFrame。 然后連接:
s = pd.concat((df.loc[i] for i in df.index), ignore_index=True)
它給你一個系列:
0 108
1 612
2 620
3 900
4 168
5 960
6 680
7 1248
8 312
9 264
10 768
11 564
12 516
13 1332
14 888
15 1596
dtype: int64
最后,如果你真的想要一個水平DataFrame:
pd.DataFrame([s])
給你:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 108 612 620 900 168 960 680 1248 312 264 768 564 516 1332 888 1596
由於您在評論中提到您有許多此類文件,因此您只需將所有系列存儲在一個列表中,並在完成全部加載后立即構建一個包含所有這些文件的DataFrame。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.