[英]Python convert a .txt file with special characters into dataframe
我有一個“.txt”文件,我想導入,將其轉換為 dataframe。 我遇到了問題。
我的代碼:
#The raw.txt file content:
#A& B & C & D & E
#foo& 13.52 & 333.2 & 4504.4 & 0
#1 taw & 13.49 & 314.6 & 4.6 & 1.29
#2 ewq & 35.44 & 4.2 & 5.2 & 3.06
#3 asd & 13.41 & 4.1 & 6.8 & 5.04
#4 er & 13.37 & 230.0 & 7.1 & 7.07
#5 we & 13.33 & 199.7 & 8.9 & 9.12
#6 wed & 13.27 & 169.4 & 8.6 & 11.17
import pandas as pd
df = pd.read_csv('raw.txt', delimiter = "\n",sep=" & ")
print(df.columns)
Index(['A& B & C & D & E'], dtype='object')
它並沒有完全轉換成 dataframe。 它無法識別列。 只需將它們全部讀取為一列。
delimiter
和sep
實際上是別名。 您可以使用其中任何一個,並使用skiprows=1
忽略第一行:
pd.read_csv('filename.txt', sep='\s*&\s*', skiprows=1)
Output:
#A B C D E
0 #foo 13.52 333.2 4504.4 0.00
1 #1 taw 13.49 314.6 4.6 1.29
2 #2 ewq 35.44 4.2 5.2 3.06
3 #3 asd 13.41 4.1 6.8 5.04
4 #4 er 13.37 230.0 7.1 7.07
5 #5 we 13.33 199.7 8.9 9.12
6 #6 wed 13.27 169.4 8.6 11.17
當使用pd.read_csv()
時, delimiter
是sep
的別名,你可以在這里閱讀。 因此,您沒有為文件選擇正確的分隔符。
您可以使用以下內容:
pd.read_csv("raw.txt", sep="&")
如果您使用sep=" & "
,則文件的第二行將引發錯誤,因為沒有足夠的列,因為您在開頭缺少空格。
這應該有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.