python - 将一列数据框拆分为多列数据框

标签 python pandas dataframe split

我正在处理这样的文本文件:

RES  MON    VOLUMEm3    FLOW_INcms  FLOW_OUTcms
1    1      0.8099E+05  0.1115E-01  0.0000E+00
2    1      0.0000E+00  0.0000E+00  0.0000E+00
3    1      0.2435E+05  0.0000E+00  0.0000E+00

因此,当我将其作为数据框打开时,在输出中我得到了一个只有一列的数据框

data = pd.read_csv(os.path.join(out, 'EDMA_1_rcp26_2025_1_output.rsv'), skiprows = 8, header = 0)

如何将此数据框拆分为多个列,并使用标题中的列名称?

最佳答案

假设值之间用空格分隔,您可以使用正则表达式指定可选的delimiter参数:

pd.read_csv('test.txt', delimiter=r'\s+')

在您的数据集上使用它,我得到:

   RES  MON  VOLUMEm3  FLOW_INcms  FLOW_OUTcms
0    1    1   80990.0     0.01115          0.0
1    2    1       0.0     0.00000          0.0
2    3    1   24350.0     0.00000          0.0

关于python - 将一列数据框拆分为多列数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40181478/

相关文章:

python - 从 python-rq 获取*所有*当前工作

python - 将数据从套接字绘制到 TKinter 时,pickle 出现 EOFError

python - Pandas 将多个列与数据框中的特定列进行比较

python - 属性错误 : 'Series' object has no attribute 'split' error in sending emails

Python 忽略非空值之后的 DataFrame 行

python - 如何计算Python DataFrame中非连续行之间的差异?

python - 对 DataFrame 中的列进行排序

python - 在 Python 中使用 Twilio API 进行出站调用时,我必须始终使用 `url` 字段吗?

python - 使用 np.where 在一系列多个值上创建另一个包含 1 和 0 的列

python - 从单列中的子字符串/正则表达式匹配创建多个新的数据框列