Python 如何在pandas中将一列数据框拆分为多列?
我正在读一个文本文件,它看起来像这样:Python 如何在pandas中将一列数据框拆分为多列?,python,pandas,dataframe,Python,Pandas,Dataframe,我正在读一个文本文件,它看起来像这样: 8 16 1 2 1.0 1 3 2.0 2 3 1.0 2 4 5.0 当我读这个文件时,它只是一列数据帧。 我想删除第一行并将其拆分为一个包含三列的数据框,标题为“f”、“t”、“l”: 'f' 't' 'l' 0 1 2 1.0 1 1 3 2.0 2 2 3 1.0 3 2 4 5.0 我如何处理这个问题?这是以下的用例: 代码: 测试代码: 结果: 最好以正确的格式读取txt,而不是稍后
8 16
1 2 1.0
1 3 2.0
2 3 1.0
2 4 5.0
当我读这个文件时,它只是一列数据帧。
我想删除第一行并将其拆分为一个包含三列的数据框,标题为“f”、“t”、“l”:
'f' 't' 'l'
0 1 2 1.0
1 1 3 2.0
2 2 3 1.0
3 2 4 5.0
我如何处理这个问题?这是以下的用例:
代码:
测试代码:
结果:
最好以正确的格式读取txt,而不是稍后再对其进行操作。试试pd.read_fwf('your_txt')或pd.read_csv('your_txt',delim_whitespace=True)
df = pd.read_fwf(data, skiprows=1, names='ftl')
data = StringIO('\n'.join([x.strip() for x in u"""
8 16
1 2 1.0
1 3 2.0
2 3 1.0
2 4 5.0
""".split('\n')[1:-1]]))
df = pd.read_fwf(data, skiprows=1, names='ftl')
print(df)
f t l
0 1 2 1.0
1 1 3 2.0
2 2 3 1.0
3 2 4 5.0