当前位置: 首页 > 编程笔记 >

向Pandas中的现有DataFrame添加新列

阚吕恭
2023-03-14
本文向大家介绍向Pandas中的现有DataFrame添加新列,包括了向Pandas中的现有DataFrame添加新列的使用技巧和注意事项,需要的朋友参考一下

Pandas 数据框是一种二维数据结构,即,数据以表格的形式在行和列中对齐。可以使用python dict,list和series等创建它。在本文中,我们将看到如何在现有数据框中添加新列。因此,首先让我们使用pandas系列创建一个数据框。在下面的示例中,我们将熊猫系列转换为一列的数据框,并为其指定列名称Month_no。

示例

import pandas as pd
s = pd.Series([6,8,3,1,12])
df = pd.DataFrame(s,columns=['Month_No'])
print (df)

输出结果

运行上面的代码将为我们提供以下结果:

   Month_No
0       6
1       8
2       3
3       1
4       12

使用insert()方法

我们可以使用insert()pandas函数,该函数会将列插入到其索引指定的位置。下面,我们将一个月中的天数作为列添加到索引位置为1的现有pandas DataFrame中。

示例

import pandas as pd
s = pd.Series([6,8,3,1,12])
df = pd.DataFrame(s,columns=['Month_No'])

#在位置1插入新列。
df.insert(1,"No_of_days",[30,31,31,31,31],True)
print (df)

输出结果

运行上面的代码给我们以下结果-

   Month_No No_of_days
0       6       30
1       8       31
2       3       31
3       1       31
4       12      31

使用assign()方法

assign()方法

示例

import pandas as pd
s = pd.Series([6,8,3,1,12])
df = pd.DataFrame(s,columns=['Month_No'])

#在末尾插入一列
df = df.assign(No_of_days = [30,31,31,31,31])

print (df)

输出结果

运行上面的代码给我们以下结果-

   Month_No No_of_days
0       6       30
1       8       31
2       3       31
3       1       31
4       12      31
 类似资料:
  • 问题内容: 我有以下索引的DataFrame,其中的命名列和行不是连续数字: 我想在现有数据框架中添加新列,并且不想更改数据框架中的任何内容(即,新列的长度始终与DataFrame相同)。 我尝试了不同的版本,但我没有得到我想要的,最多只是错误的结果。如何e在上面的示例中添加列? 问题答案: 使用原始的df1索引创建系列: 编辑2015年 有些人报告使用此代码。 但是,该代码仍可以在当前的熊猫0.

  • 本文向大家介绍在Python中的Pandas中向现有DataFrame添加新列,包括了在Python中的Pandas中向现有DataFrame添加新列的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将学习如何在pandas中向现有DataFrame添加新列。我们可以有不同的方法来添加新列。让我们所有人。 使用列表 我们可以使用该列表添加新列。请按照以下步骤添加新列。 算法 让我们看一个例

  • 问题内容: 我了解pandas旨在加载完全填充的内容,但是我需要创建一个空的DataFrame然后逐行添加行。做这个的最好方式是什么 ? 我成功创建了一个空的DataFrame: 然后,我可以添加新行,并用以下字段填充字段: 它有效,但看起来很奇怪:(添加字符串值失败) 如何将新行添加到DataFrame(具有不同的列类型)? 问题答案:

  • 对如何实现这一点有什么想法吗?

  • 问题内容: 我的问题是,将一行添加到DataFrame会更改列的dtype: 我将dtype特别指定为int32(即’i4’),可以看出: 但是,添加一行会将dtype更改为float64: 我尝试指定添加的值的dtype: 但这也不起作用。有没有不使用返回新对象的函数的解决方案? 问题答案: 放大分为两个阶段,首先将a放在该列中,然后将其分配,这就是为什么要强制它的原因。我将其放在错误/增强列表

  • 问题内容: 我不知道如何使用Laravel框架向现有数据库表添加新列。 我试图使用…来编辑迁移文件。 在终端中,我执行和。 如何添加新列? 问题答案: 要创建迁移,您可以在Artisan CLI上使用migration:make命令。使用特定名称以避免与现有模型冲突 对于Laravel 3: 对于Laravel 5+: 然后,您需要使用该方法(在访问现有表而不是创建新表时)。您可以添加如下所示的列