Abh*_*rni 1 python dataframe pandas
这是示例代码。
import pandas as pd, numpy as np
df = pd.DataFrame(np.random.randint(0,100,size=(10, 1)), columns=list('A'))
Run Code Online (Sandbox Code Playgroud)
我有一个列表dl = [0,2,3,4,7]
在list指定的索引位置,我希望A列为“是”。
以下代码有效
df.loc[dl,'A']='Yes'
Run Code Online (Sandbox Code Playgroud)
对于不在索引中的列值,如何用“否”填充列“ A”。如果这是重复的帖子,请原谅我。
np.where我在做一个假设,有一个更好的办法做到既'Yes'和'No'在同一时间。如果您确实只想在'No'已经获得以后填写,'Yes'请参考Fatemehhh的答案
df.loc[:, 'A'] = np.where(df.index.isin(dl), 'Yes', 'No')
Run Code Online (Sandbox Code Playgroud)
不代表实际建议
f = dl.__contains__
g = ['No', 'Yes'].__getitem__
df.loc[:, 'A'] = [*map(g, map(f, df.index))]
df
A
0 Yes
1 No
2 Yes
3 Yes
4 Yes
5 No
6 No
7 Yes
8 No
9 No
Run Code Online (Sandbox Code Playgroud)