Я работаю с файловой рамкой, созданной из файла csv, загруженного из отдела шерифа моего округа. Данные расположены here и могут быть считаны с использованием read_csv()
. Информационный кадр содержит информацию об инцидентах, о которых сообщается и действует шерифом. Один из столбцов - это город, в котором произошел инцидент, и я пытаюсь создать таблицу и график, показывающий изменение числа инцидентов для моей области (Ларкфилд) со временем.Ведущие или конечные пробелы и pandas value_counts vs boolean selection
Когда я использую функцию value_counts панды с помощью «города» в качестве входных данных, я получаю
In [86]: compcounts = soco['city'].value_counts()
In [96]: compcounts[0:10]
Out[96]:
SANTA ROSA 55291
WINDSOR 31711
SONOMA 28840
GUERNEVILLE 9309
BOYES HOT SPRINGS 8006
PETALUMA 6103
EL VERANO 5969
GEYSERVILLE 5822
LARKFIELD 5398
FORESTVILLE 5312
dtype: int64`
Есть 5398 отчетов для моей области («Larkfield»). Но когда я пытаюсь получить подмножество dataframe для моей области, используя
larkfieldcomps = soco[soco['city'] == "LARKFIELD"]
он возвращает только 115 значений, а не 5398:
In [94]: larkcounts = larkfieldcomps['year'].value_counts()
In [95]: larkcounts
Out[95]:
2015 114
2013 1
dtype: int64
Я думал, может быть проблема в том, что в некоторых записях там было одно или несколько пробелов до или после «LARKFIELD» в описании инцидента, поэтому я сделал поиск/замену, чтобы попытаться вычеркнуть любые пробелы, но я все еще получаю только 115 значений при поиске по «LARKFIELD», хотя я знаю там это еще много инцидентов в этой области.
Это мой первый вопрос о Stackoverflow ... Я исследовал это до смерти, но еще не придумал ответа. Мы ценим любые предложения.
Что делает 'len (larkcounts)' show? у вас могут быть значения «NaN» в ваши годы, которые не учитываются в 'value_counts' – EdChum
Например,' larkfieldcomps ['year']. value_counts (dropna = False) 'дает вам всего 5398? – EdChum
Спасибо Ed, я уже проверил это, и я также просмотрел ядро данных и нашел строки, где «LARKFIELD» было «городом», а дата была чем-то иным, чем 2015 или 2013 год. Я все еще озадачен. – SSShupe