【问题标题】:Splitting a column into multiple ones [closed]将一列拆分为多个[关闭]
【发布时间】:2023-03-10 02:45:01
【问题描述】:

我有一个包含多个值的数据汇总在一列中,例如(更多行):

"(-99.0, -99.0, -99.0, -99.0, -99.0, -99.0, -99.0, -99.0, -99.0, -99.0, -99.0, -99.0)"                                                            
"(0.43963563, 0.43963563, 0.43963563, 0.43963563, 0.43963563, 0.43963563, 0.43963563, 0.43963563, 0.43963563, 0.43963563, 0.43963563, 0.43963563)"
"(0.20000014, 0.20000014, 0.20000014, 0.20000014, 0.20000014, 0.20000014, 0.20000014, 0.20000014, 0.20000014, 0.20000014, 0.20000014, 0.20000014)"

现在我的目标是摆脱'"''('')',这是更重要的部分,将每一行分成 12 列,最终得到这样的结果:

      1         2            3          4          5           6             7            8          9         10           11         12
-99            -99          -99       -99         -99         -99          -99          -99         -99         -99        -99        -99
0.43963563  0.43963563  0.43963563  0.43963563  0.43963563  0.43963563  0.43963563  0.43963563  0.43963563  0.43963563  0.43963563  0.43963563
0.20000014  0.20000014  0.20000014  0.20000014  0.20000014  0.20000014  0.20000014  0.20000014  0.20000014  0.20000014  0.20000014  0.20000014

到目前为止,我所拥有的只是一些代码,可以将我的行拆分为单独的值并删除 ','

my_file = open("expand_single_column_alternate.dat","r")
content = my_file.read()
liste = content.split(",")    

【问题讨论】:

标签: python split multiple-columns


【解决方案1】:

在这种情况下,每行实际上是一个包含多个数字的有效 Python 元组,您可以使用 ast.literal_eval 将该行变成一个实际的元组:

>>> import ast
>>> s = "( 1 , 2 , 3 , 4 , 5 )"
>>> ast.literal_eval(s)
(1, 2, 3, 4, 5)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-20
    • 1970-01-01
    • 2021-01-30
    • 1970-01-01
    • 2020-02-10
    • 2013-01-23
    相关资源
    最近更新 更多