这是我在这个论坛上的第一个问题,对不起,如果我的英语不太好!
我想仅在特定列尚未包含特定值时才向DataFrame添加行。我想写下这个:
df = pd.DataFrame([['Mark', 9], ['Laura', 22]], columns=['Name', 'Age'])
new_friend = pd.DataFrame([['Alex', 23]], columns=['Name', 'Age'])
df = df.append(new_friend, ignore_index=True)
print(df)
Name Age
0 Mark 9
1 Laura 22
2 Alex 23
现在我想添加另一位朋友,但我想确保我还没有同名的朋友。这就是我实际在做的事情:
new_friend = pd.DataFrame([['Mark', 16]], columns=['Name', 'Age'])
df = df.append(new_friend, ignore_index=True)
print(df)
Name Age
0 Mark 9
1 Laura 22
2 Alex 55
3 Mark 16
然后:
df = df.drop_duplicates(subset='Name', keep='first')
df = df.reset_index(drop=True)
print(df)
Name Age
0 Mark 9
1 Laura 22
2 Alex 55
还有另一种方法可以做到这样:
如果列'Name'中的名称为True:
不添加好友
否则:
添加好友
谢谢!
答案 0 :(得分:0)
if 'Mark' in list(df['Name']):
print('Mark already in DF')
else:
print('Mark not in DF')