Как сравнить значения столбца с первым и последним значением столбца python - PullRequest
0 голосов
/ 15 мая 2019

У меня есть фрейм данных со столбцом AI. Я хочу сравнить все строки столбца A с первой строкой столбца, а затем сравнить все строки с последней строкой столбца, если какое-либо значение соответствует первой или последней строке, добавить флаг-столбец и дать 0, если не совпадаетзатем укажите 1.

Примечание: при сравнении всех строк с первой строкой не включается последняя строка при сравнении всех строк с последней строкой не включает первую строку

, поэтому мне нужно знать любое значение в столбцесовпадает с первым или последним значением и дает флаг

1 Ответ

0 голосов
/ 15 мая 2019

Используйте Series.iloc для выбора первого и последнего значения путем индексации, проверьте членство с помощью Series.isin и приведите к целому числу для отображения True/False в 1/0, затем установитепервое и последнее значение 0 используйте DataFrame.iloc с позицией для столбца flag на Index.get_loc:

df = pd.DataFrame({
    'A': [2,3,4,2,6],
})

df['flag'] = df['A'].isin(df['A'].iloc[[0, -1]]).astype(int)
#alternative
#df['flag'] = np.where(df['A'].isin(df['A'].iloc[[0, -1]]), 1, 0)

df.iloc[[0, -1], df.columns.get_loc('flag')] = 0
print (df)
   A  flag
0  2     0
1  3     0
2  4     0
3  2     1
4  6     0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...