我有一個巨大的 CSV 檔案,它看起來像這樣:
1. 02.01.18;"""2,871""";"""2,915""";"""2,871""";"""2,878""";""" 1,66 %""";"""57.554""";"""166.075 EUR""";"""0,044"""
2. 03.01.18;"""2,875""";"""2,965""";"""2,875""";"""2,925""";""" 1,63 %""";"""39.116""";"""114.441 EUR""";"""0,090"""
3. 04.01.18;"""2,915""";"""3,005""";"""2,915""";"""2,988""";""" 2,15 %""";"""58.570""";"""174.168 EUR""";"""0,090"""
最后我只想提取日期和比率。資料集應如下所示:
1.02.01.18, 1,66 %
2.03.01.18, 1,63 %
3.04.01.18, 2,15 %
我試過這個,直到現在我才遇到更多的麻煩:
import pandas as pd
df = pd.read_csv("Dataset.csv", nrows=0)
print(df)
data = []
for response in df:
data.append(
response.split(';')
)
print(data[0])
你知道清理這個資料集的更好方法嗎?
uj5u.com熱心網友回復:
使用熊貓:
import pandas as pd
df = pd.read_csv('data.csv', sep=';', usecols=[0,5], names=['date', 'rate'])
df.rate = df.rate.str.strip('"')
print(df)
結果:
date rate
0 1. 02.01.18 1,66 %
1 2. 03.01.18 1,63 %
2 3. 04.01.18 2,15 %
正如評論中提到的,您可能不需要日期列中的額外索引。此外,索引和過度參考表明檔案最初沒有正確創建,應該修復該程序。
請注意,現在兩列都是 type str,這可能不是您想要的......
uj5u.com熱心網友回復:
您可以為此使用正則運算式:
regex = re.compile(r'([\d\. ] ).*([ -][\d, %] )')
date, ratio = regex.match(s).groups()
date = date.replace(' ', '')
測驗:
>>> date
'2.03.01.18'
>>> ratio
' 1,63 %'
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/357500.html
上一篇:獲取熊貓中兩列之間的鏈接
