【问题标题】:How to split the data two columns and rename it如何将数据拆分为两列并重命名
【发布时间】:2021-12-09 03:17:02
【问题描述】:

您好,我有一些问题,想对我编写的代码提出一些建议。 text file I use

代码

import pandas as pd
import numpy as np
filename = '100m.txt'
#read text file into pandas DataFrame 
df = pd.read_csv(filename, sep="\t")
#drop the unwanted rows
df.drop(df.index[0:2], inplace=True)  

#display DataFrame
print(df)

我在删除列之前获得的输出:

#"Frequency / MHz"                                  S2,1 [SPara1] [Magnitude in dB]
#----------------------------------------------...                              NaN
0.13800000000000                                                  -0.86382723874573
0.14231250000000                                                  -0.87087313013279
0.14662500000000                                                  -0.87829259771590
...                                                                             ...
17.646750000000                                                    -7.4030582653105
17.651062500000                                                    -7.4207444253551
17.655375000000                                                    -7.4408195390888
17.659687500000                                                    -7.4589436977625
17.664000000000                                                    -7.4799578201591

[4067 rows x 1 columns]


在我删除该列后,但不知何故,数据中出现了 '#,所有数据都在一列中,而不是我预期的两列。

                                 #
0.13800000000000  -0.86382723874573
0.14231250000000  -0.87087313013279
0.14662500000000  -0.87829259771590
0.15093750000000  -0.88573009666901
0.15525000000000  -0.89247663245258
    
[4065 rows x 1 columns]

​如何让数据分成两行并重命名列?提前谢谢你。

【问题讨论】:

    标签: python pandas text split


    【解决方案1】:

    你应该在解析 DataFrame 时处理这个问题。请注意在尝试删除之前打印 DataFrame 时它是如何表示的 [4067 行 x 1 列]?在加载 CSV 时包含这三行会破坏使用您指定的 '\t' 分隔符正确拆分它的能力。

    示例代码:

    df = pd.read_csv(
        filename,
        sep="\t",
        skiprows=3,
        names=['frequency', 'magnitude'],
    )
    

    您也可以如上例所示解析自己的列名,因为我们在解析数据时完全忽略了这些行。

    导致:

    【讨论】:

    • 非常感谢您解释我做错的步骤。谢谢你指导我。
    猜你喜欢
    • 2022-01-20
    • 2023-01-25
    • 2017-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-29
    • 1970-01-01
    相关资源
    最近更新 更多