我有一些数据看起来像这样:
c stuff
c more header
c begin data
1 1:.5
1 2:6.5
1 3:5.3
我想把它导入到一个3列数据框中,其中列名例如:
a , b, c
1, 1, 0.5
etc
我一直在尝试将数据分为两列,以':'为分隔符,并将第一列以' '为分隔符进行拆分。但我发现这很烦人。是否有更好的方法可以直接在导入时解决?目前情况:
data1 = pd.read_csv(file_loc, skiprows = 3, delimiter = ':', names = ['AB', 'C'])
data2 = pd.DataFrame(data1.AB.str.split(' ',1).tolist(), names = ['A','B'])
然而,这一情况进一步复杂化了,因为我的数据开头有一个空格...
我觉得这应该是一个简单的任务,但目前我想着逐行读取并使用一些查找和替换方法来清理数据,然后再进行导入。
pandas.errors.ParserError:在第11行中期望29个字段,但看到了45个。错误可能是由于在使用多字符分隔符时忽略引号引起的。
- user77005sep='[ :]'
。 - Andras Deak -- Слава Україніsep
值是一个正则表达式字符串;请确保您始终将其放置在'..'
或"...."
中。 - Sumax