我有3004行沒有標題的數據,每行有不同數量的字段(例如行號1,2,3,4有16,17,21, 12)。當我調用csv時,這是我的代碼。分隔符在Python中讀取csv時不起作用
df = pd.read_csv(file,'rb', delimiter ='\t', engine='python')
這裏是輸出:
$GPRMC,160330.40,A,1341.,N,10020.,E,0.006,,150517,,,A*7D
$GPGGA,160330.40,1341.,N,10020.,E,1,..
$PUBX,00,160330.40,1341.,N,10020.,E,...
$PUBX,03,20,2,-,056,40,,000,5,U,014,39,41,026,...
$PUBX,04,160330.40,150517,144210.39,1949,18,-6...
ÿ$GPRMC,160330.60,A,1341.,N,10020.,E...
$GPGGA,160330.60,1341.,N,10020.,E,1,...
這似乎是分隔符並沒有在所有的工作由列數據分成列。因此,我嘗試使用基於($ PUBX,00)中字段數的列函數。以下是我添加列的代碼:
my_cols = ['MSG type', 'ID MSG', 'UTC','LAT', 'N/S', 'LONG', 'E/W', 'Alt', 'Status','hAcc', 'vAcc','SOG', 'COG', 'VD','HDOP', 'VDOP', 'TDOP', 'Svs', 'reserved', 'DR', 'CS', '<CR><LF>']
df = pd.read_csv(file, 'rb', header = None, na_filter = False, engine = 'python', index_col=False, names=my_cols)
並且結果如下圖所示。該文件成爲'MSG類型'中的一列。
我的成功後,目的是把這個CSV是隻有$ PUBX,00,...和$ PUBX,04,一列之間的組合來讀取行......並把它寫入到CSV 。但是,我仍然在努力如何將文件分成列。請就此事諮詢我。非常感謝你。基於您的代碼
一覽您的實際分隔符是一個逗號,而不是一個標籤。嘗試刪除'delimiter ='\ t''參數。 –