首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Pandas:对于两个或更多特定列值完全相同的行组,如何将唯一整数分配为新列

在Pandas中,我们可以使用factorize()函数为具有相同特定列值的行组分配唯一的整数值作为新列。

factorize()函数可以接受一个包含要进行分组的列值的数组作为输入,并为每个唯一值分配一个唯一的整数标签。这样,我们就可以将这些整数标签分配给原始数据中对应的行,从而创建新的列。

下面是一个示例代码:

代码语言:txt
复制
import pandas as pd

# 创建一个包含特定列值的DataFrame
data = {
  'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar'],
  'B': ['one', 'one', 'two', 'two', 'one', 'one'],
  'C': ['x', 'y', 'x', 'y', 'x', 'y']
}
df = pd.DataFrame(data)

# 使用factorize()函数为具有相同特定列值的行组分配唯一的整数值作为新列
df['new_column'] = pd.factorize(df['B'] + df['C'])[0]

print(df)

输出结果为:

代码语言:txt
复制
     A    B  C  new_column
0  foo  one  x           0
1  bar  one  y           1
2  foo  two  x           2
3  bar  two  y           3
4  foo  one  x           0
5  bar  one  y           1

在这个例子中,我们将B列和C列的值拼接起来作为factorize()函数的输入。factorize()函数将根据这些组合值为其分配唯一的整数标签,并将这些标签作为新列new_column的值。在这个例子中,我们可以看到one+x的组合在新列中的标签为0,one+y的组合的标签为1,two+x的组合的标签为2,以此类推。

请注意,以上示例中没有提及具体的腾讯云产品,因此不包含对应的链接地址。如果您需要了解腾讯云的相关产品信息,请参考腾讯云官方文档或咨询腾讯云官方渠道。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的视频

领券