簡體   English   中英

將非唯一 ID 分配給 pandas 中的 dataframe

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM