当前位置: 首页 > 知识库问答 >
问题:

如何向没有列的pandas数据帧添加列?[副本]

高祺
2023-03-14

我有一个数据框架,其中有2列。第一列似乎没有列名,第二列名为< code>Speed。

这是一个MRE:

from io import StringIO  # to read strings as files for read_csv

import pandas as pd

parts = [
    '[Level1]\nLocation = "London"\nType= "GTHY66"\n'
    'Date = "16-11-2021"\nEnergy level = "Critical zero"\n',
    '0.000   26.788\n0.027   26.807\n0.053   26.860'
]

lvl2_lines = "Speed\n" + parts[1]

df_level2 = pd.read_csv(StringIO(lvl2_lines), sep='\t')
print(df_level2.columns)
print(df_level2)

这是我执行打印语句时的输出:

Index(['Speed'], dtype='object')
            Speed
0  0.000   26.788
1  0.027   26.807
2  0.053   26.860

这是我想要的输出:

Index(['Power', 'Speed'], dtype='object')
   Power   Speed
0  0.000  26.788
1  0.027  26.807
2  0.053  26.860

共有1个答案

云季同
2023-03-14

您需要拆分字符串:

df[["Power", "Speed"]] = df["Speed"].str.split(expand=True).astype(float)

>>> df
    Speed  Power
0  26.788  0.000
1  26.807  0.027
2  26.860  0.053
 类似资料:
  • 我有一个熊猫数据帧,它被定义为空,然后我想在做一些计算后添加一些行。 我试图做到以下几点: 如果我试着打印并附加到测试显示中 因此,很明显,该行没有被添加到数据帧中。 我希望输出是

  • 我使用文件路径解析 Spark 数据帧,但现在我想将路径与时间一起作为单独的列添加到生成的数据帧中。下面是一个当前的解决方案(pathToDF 是一个帮助器方法): 我正在尝试做这样的事情,但我不确定如何使用Column添加时间列: 实现它的更好方法是什么? 输入自由度: 当前结果: 预期结果:

  • 向pandas对象添加空列的最简单方法是什么?我偶然发现的最好的东西是 有没有一种不那么反常的方法?

  • 问题内容: 假设我有一个看起来像这样的数据框: 假设此数据帧已经存在,如何简单地在列索引中添加级别“ C”,以便得到此信息: 我看到了像这样的python / pandas这样的ananser:如何将两个数据帧与具有分层列索引的一个合并在一起?但这会连接不同的数据框,而不是在现有数据框上添加列级别。 -- 问题答案: 正如@StevenG自己建议的那样,一个更好的答案是:

  • 我有一个 功能,请告诉我是否有任何解决方法。 谢谢你。!

  • 本文向大家介绍向Pandas中的现有DataFrame添加新列,包括了向Pandas中的现有DataFrame添加新列的使用技巧和注意事项,需要的朋友参考一下 Pandas 数据框是一种二维数据结构,即,数据以表格的形式在行和列中对齐。可以使用python dict,list和series等创建它。在本文中,我们将看到如何在现有数据框中添加新列。因此,首先让我们使用pandas系列创建一个数据框。