Почему я получаю пустой кадр данных после фильтра?

#python #pandas #dataframe

Вопрос:

Я хочу отфильтровать данные, которые имеют "Degree status" == "HS-grad" amp; выпускник средней школы.

Я пытался сделать это:

 HS_grad = census_data2[census_data2["Degree Status"]=="HS-grad"] print(HS_grad)  

Однако, когда я печатаю его, я получаю пустой фрейм данных.

 Empty DataFrame Columns: [Employment Type, Degree Status, Marriage-Status, Job-Role, Family-Role, Ethnicity, Gender, Country, Earnings] Index: []  

Это набор данных, который я переименовал в заголовок:

набор данных

Комментарии:

1. Не могли бы вы предоставить нам заголовок фрейма данных ? — пример данных, более подробная информация об этом?

2. похоже , вы фильтруете 'HS-grad' вместо HS-grad того, чтобы использовать там две пары кавычек.

3. Действительно "Degree Status" ли столбец содержит буквальные одинарные кавычки?

4. Я проверил как с «HS-градом», так и с HS-градом. Я получаю пустой фрейм данных в обоих случаях

5. Невозможно определить, в чем проблема, не имея возможности воссоздать ваш фрейм данных в точности так, как он отображается на вашем конце. Вывод print(census_data2.head(10).to_dict()) (перед фильтрацией) был бы особенно полезен.

Ответ №1:

С моей точки зрения, вы не делаете ничего плохого,

 df = DataFrame([{"test name": 1}]) print(df[df["test name"]==1])   

доходность

 test name 0 1  

Возможно ли, что в записи «HS-град»есть пробелы?