Pandas & Dataframe: ValueError: можно преобразовать только массив размера 1 в Python скаляр - PullRequest
0 голосов
/ 21 марта 2020

Я пытался найти похожий вопрос, но все еще не мог найти решение.

Я работаю над фреймом данных с pandas.

Следующий код не работает. Он работает только для первой строки в кадре данных. Уже для второго ряда я получаю ошибку. как ниже. Может быть, кто-то видит ошибку и может помочь:)

census2=census_df[census_df["SUMLEV"]==50]
list=census2["CTYNAME"].tolist() 

max=0 

for county1 in list:
    countylist=[]
    df1=census2[census2["CTYNAME"]==county1]
    countylist.append(df1["POPESTIMATE2010"].item())
    countylist.append(df1["POPESTIMATE2011"].item())
    countylist.append(df1["POPESTIMATE2012"].item())
    countylist.append(df1["POPESTIMATE2013"].item())
    countylist.append(df1["POPESTIMATE2014"].item())
    countylist.append(df1["POPESTIMATE2015"].item())
    countylist.sort()
    difference=countylist[5]-countylist[0]
    if difference > max:
        max=difference
        maxcounty=county1

print(maxcounty)
print(max)



[54660, 55253, 55175, 55038, 55290, 55347]
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-5-340aeaf28039> in <module>()
     12     countylist=[]
     13     df1=census2[census2["CTYNAME"]==county1]
---> 14     countylist.append(df1["POPESTIMATE2010"].item())
     15     countylist.append(df1["POPESTIMATE2011"].item())
     16     countylist.append(df1["POPESTIMATE2012"].item())

/opt/conda/lib/python3.6/site-packages/pandas/core/base.py in item(self)
    829         """
    830         try:
--> 831             return self.values.item()
    832         except IndexError:
    833             # copy numpy's message here because Py26 raises an IndexError

ValueError: can only convert an array of size 1 to a Python scalar
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...