[英]assigning non-unique ID to a dataframe in pandas
我有一个 dataframe df
:
import pandas as pd
df = pd.DataFrame(
{ "name": [
"Hello Kitty",
"Hello Puppy",
"It is an Helloexample",
"for stackoverflow",
"Hello World",
],
}
)
我想添加一个my_id
列,它为每三个记录分配从 1 开始的值,即,对于前三个记录, my_id
列应该得到值 1,然后对于接下来的 3 个应该得到值 2,依此类推。
如何在pandas
中执行此操作?
如果默认RangeIndex
,则使用 integer 除以3
和索引值:
df['my_id'] = df.index // 3 + 1
如果有任何索引,您可以使用辅助数组:
df['my_id'] = np.arange(len(df)) // 3 + 1
print (df)
name my_id
0 Hello Kitty 1
1 Hello Puppy 1
2 It is an Helloexample 1
3 for stackoverflow 2
4 Hello World 2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.