Как удалить выбросы на основе количества значений столбца в каждой строке - PullRequest
0 голосов
/ 19 июня 2020

Я новичок в науке о данных и пытаюсь решить курсовое упражнение для системы рекомендаций mov ie, и я хочу удалить строк на основе общего количества значений для столбцов для каждой строки .

т.е. , если кто-то дал оценку слишком большому количеству фильмов, его следует отбросить, чтобы отфильтровать окончательные результаты. Хотя я нашел традиционный способ сделать это, но я не удовлетворен, так как было бы действительно полезно, если бы кто-то помог мне найти более * pythoni c способ решения проблемы.

Вот таблица с именем userRatings

title    Zeus and Roxanne (1997)  unknown  Á köldum klaka (Cold Fever) (1994)  
user_id                                                                        
0                            NaN      NaN                                 NaN  
1                            NaN      4.0                                 NaN  
2                            NaN      NaN                                 NaN  
3                            NaN      NaN                                 NaN  
4                            NaN      NaN                                 NaN  
5                            NaN      4.0                                 NaN  
6                            NaN      NaN                                 NaN  
7                            NaN      NaN                                 NaN  
8                            NaN      NaN                                 NaN  
9                            NaN      NaN                                 NaN  

[10 rows x 1664 columns]

А вот код, который я пытался решить:

for index in userRatings.index:
     if userRatings.loc[index].count() > 500:
         userRatings = userRatings.drop(index)

1 Ответ

0 голосов
/ 19 июня 2020

Я предполагаю, что у вас есть Pandas DataFrame ... если это так, одна альтернатива будет примерно такой:

valid_rating_ixs = userRatings.sum(axis=1) <= 500
userRantings_cleaned = userRatings[valid_rating_ixs]

Обратите внимание, что в моем коде выше, а также в вашем коде вы можете включать столбцы, не являющиеся рейтингами (например, user_id). Возможно, вам нужно проверить, что вы используете только соответствующие столбцы в своем фрейме данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...