Присвоение логического значения пустой серии во фрейме данных pandas на основе количества значений в строке в другой серии / - PullRequest
0 голосов
/ 13 сентября 2018

Я хочу присвоить логическое значение текущему столбцу «True», если первый столбец содержит только один период, и «False», если он содержит более одного периода.

Это то, что я получил к этому моменту, и я полностью застрял:

for index, row in qbstats.iterrows():
    if qbstats['qb'].count(".") > 1

...... поэтому, если он больше единицы, я хочу назначить столбецпомечены "num_periods_in_name" как False, иначе будет установлено значение True.

Буду признателен за любую помощь, спасибо.

1 Ответ

0 голосов
/ 13 сентября 2018

Вы можете использовать np.where():

df['New Col'] = np.where(df['qb'].str.count('\.')>1, False, True)

Обратите внимание, что вам нужно будет сбежать . с \.

Ниже приведен пример:

            qb
0       Hello.
1    helloo...
2  hello...ooo
3       Hell.o

И применение кода выше дает:

            qb  New Col
0       Hello.     True
1    helloo...    False
2  hello...ooo    False
3       Hell.o     True
...