在 for 循环中添加熊猫列值



我有以下Python代码(不是100%完成(:

labels = []
for i in range(0, len(test)):
    name = test.iloc[i]['name']
    s = name.split('.')
    label_name = s[0]
    label = label_names.index(label_name)
    id = int(s[1])
    labels.append(label)
test['label'] = labels

最后一条语句生成"正在尝试在数据帧中的切片副本上设置值"警告。

有没有更好的方法在数据框中创建新列"标签"?

def my_function(input):
   name = input
   s = name.split('.')
   label_name = s[0]
   label = label_names.index(label_name)
   id = int(s[1])
   return label
test['label'] = test['name'].apply(lambda x: my_function(x))

最新更新