#python #pandas
#питон #панды
Вопрос:
У меня есть df («данные»), полный информации из IMDB, и я пытаюсь заменить строку текста для недоступных резюме на NaN. Я хотел начать с простого подсчета их, используя этот код:
data[data['synopsis'=='\nIt looks like we don't have a Synopsis for this title yet. Be the first to contribute! Just click the "Edit page" button at the bottom of the page or learn more in the Synopsis submission guide.\n']].count()
Но я получаю ключевую ошибку. У меня есть подозрение, что это из-за dtype?
Я попытался преобразовать столбец синопсиса из объекта в строку, но безрезультатно, используя этот код:
data['synopsis'] = data['synopsis'].apply(str)
и этот код:
pd.Series('synopsis').astype('str')
Но когда я смотрю на информацию, ничего не меняется. Однако мне удалось преобразовать StartYear в datetime.
lt;class 'pandas.core.frame.DataFrame'gt; Int64Index: 27007 entries, 0 to 31893 Data columns (total 17 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 tconst 27007 non-null object 1 titleType 27007 non-null object 2 primaryTitle 27007 non-null object 3 originalTitle 27007 non-null object 4 isAdult 27007 non-null int64 5 startYear 27007 non-null datetime64[ns] 6 endYear 27007 non-null object 7 runtimeMinutes 27007 non-null object 8 genres 27007 non-null object 9 storyline 20362 non-null object 10 synopsis 27007 non-null object 11 countries_of_origin 26640 non-null object 12 budget 11295 non-null object 13 opening_weekend 771 non-null object 14 production_company 19478 non-null object 15 rating 13641 non-null float64 16 number_of_votes 13641 non-null object dtypes: datetime64[ns](1), float64(1), int64(1), object(14) memory usage: 4.7 MB
Я новичок во всем этом-что я делаю не так?
Ответ №1:
Вы поставили скобку не в то место в строке фильтра. Ты хочешь закрыться df[df['synopsis']==...]
.
И я считаю, что pandas использует object
в качестве dtype для строк, поэтому правильно, что он говорит object
.