Перебор колонок панд - PullRequest
       42

Перебор колонок панд

0 голосов
/ 23 октября 2018

У меня есть датафрейм со следующими столбцами:

User_id   PQ          TGGS       PAG       Games_played
118399  8.536585    7.079646    10.204082   7.711443
212651  75.000000   73.684211   75.000000   46.534653
210314  60.000000   9.523810    33.333333   14.414414

столбцы на самом деле являются игровыми кодами.Я хочу порекомендовать пользователя для игры на основе процента игр, в которые он играл.В моем наборе данных пользователь 212651 сыграл 75% времени в PQ и 73% времени в TGGS.Так что, если он играет в PQ, он может играть в TGGS.Сейчас эти значения сильно различаются.Таким образом, параметр, который я установил, составляет 50%.Так что для пользователя, если конкретная игра на 50% связана с другой игрой, я хочу отправить ему электронное письмо с указанием, что следующая игра - TGGS, поскольку эти два значения тесно связаны.

Я хочу сохранитьСоотношение между значениями 50%.Итак, код, который я написал:

    for i, num in new_df['PQ'].iteritems():
        if num > new_df['TGGS'] * .5:
            print User_id[num]
            print new_df['TGGS']

Я получаю синтаксическую ошибку в строке 2.

   1467                         "indexers [{key}] of {kind}".format(
   1468                             form=form, klass=type(self), key=key,
-> 1469                             kind=type(key)))
   1470 
   1471     def get_duplicates(self):

TypeError: cannot do label indexing on <class 'pandas.core.indexes.range.RangeIndex'> with these indexers [8.536585365853659] of <class 'numpy.float64'>

Может кто-нибудь дать мне хорошее решение для этого.

Конечной целью является получение datafame с user_id, и если PQ связан с TGGS True, совместно с PAG True.Так что я могу написать этому конкретному пользователю

1 Ответ

0 голосов
/ 23 октября 2018

Вы можете выбрать только те элементы, которые вам нужны в кадре данных, с помощью:

df[df['PQ'] > (df['TGGs'] * 0.5)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...