Конвертировать только строки, длина списка которых равна 1, в строку - PullRequest
1 голос
/ 07 ноября 2019

У меня есть DataFrame в Python, где каждая строка из столбца tags представляет собой список:

df
>>>  name          tags
>>>  alice   |      [a]
>>>  bruce   |   [a, b, c]

Я хочу преобразовать в строку только строки, которые имеют список length = 1. Ожидаемый результат

df
>>>  name          tags
>>>  alice   |       a
>>>  bruce   |   [a, b, c]

1 Ответ

3 голосов
/ 07 ноября 2019

Вы можете использовать:

c=df['tags'].str.len().eq(1)
df['tags']=np.where(c,df['tags'].str[0],df['tags'])
print(df) #df.to_csv('file.txt',sep='|',index=False)

    name          tags
0  alice             a
1  bruce     [a, b, c]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...