Вытащите значения Excel и поместите в список - PullRequest
0 голосов
/ 01 октября 2018

Я хотел бы получить общую сумму 1 в столбце Excel и поместить их в список:

df = pd.read_excel(r'filelocation')
t = df.col.value_counts().loc[1]
x = []
for i in t:
    x.append(i)
print (x)

Первые части кода работают, и я могу вывести результат t, однакокогда я пытаюсь поместить значение в список, я получаю «объект numpy.int64 не повторяется».

Это менее важно, но я также хотел бы сделать этот фрагмент более модульным, подсчитав количество 2-х 3-х и т. Д. И поместив их в один и тот же список.Я правильно использую список?Должен ли я использовать словарь вместо этого?

Ответы [ 2 ]

0 голосов
/ 01 октября 2018

Не совсем уверен, почему вам нужно конвертировать Series в dict или list, если вам нужно, я буду рекомендовать dict, данные из Jez

import collections
df = pd.DataFrame({
    'col': [1,1,2,2,3,3,4,4,4,4,4]
})
collections.Counter(df.col.values.tolist())
Out[532]: Counter({1: 2, 2: 2, 3: 2, 4: 5})
#dict(collections.Counter(df.col.values.tolist()))
0 голосов
/ 01 октября 2018

Да, словарь здесь лучше:

df = pd.DataFrame({
    'col': [1,1,2,2,3,3,4,4,4,4,4]
})
print (df)
    col
0     1
1     1
2     2
3     2
4     3
5     3
6     4
7     4
8     4
9     4
10    4

d = df.col.value_counts().to_dict()
print (d)
{4: 5, 3: 2, 2: 2, 1: 2}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...