Как проверить, присутствует ли значение в одном кадре данных в ключах в другом кадре данных - PullRequest
0 голосов
/ 06 февраля 2019

У меня есть два кадра данных:

df_1:

         Letters Boolean
          a         Nan
          b         Nan
          c         Nan

df_2:

 a     b     d
 2.7   1.2   3.6
 1      2     3

Как проверить, присутствует ли df_1 ['letters'] вdf_2.keys ().Если он присутствует, я хочу, чтобы boolean принял значение 'x': что-то вроде:

     Letters Boolean
      a         x
      b         x
      c         Nan

Я пытался использовать этот код:

for x in df_1['letters']:
   if x in df_2.keys():
     df_1['Boolean']='x'

Ответы [ 2 ]

0 голосов
/ 06 февраля 2019

Использование numpy.where с isin:

df1['Boolean'] = np.where(df1['Letters'].isin(df2.columns), 'x', np.nan)
0 голосов
/ 06 февраля 2019

Вам нужно:

df1['Boolean']=df1.Letters.isin(df2.columns).map({True:'x',False:np.nan})
print(df1)

  Letters Boolean
0       a       x
1       b       x
2       c     NaN
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...