Как рассчитать количество строк в DataFrame - PullRequest
0 голосов
/ 25 мая 2020

Я пытаюсь подсчитать количество строк в столбце моего фрейма данных.

>>> import pandas as pd                                                              

>>> df = pd.DataFrame({'A':['a','b','c',1,2,3],
                       'B':['pp','qq','rr',3,4,5]})
>>> df
   A   B
0  a  pp
1  b  qq
2  c  rr
3  1   3
4  2   4
5  3   5

>>> df['A'].str.count('/w')                                                          
0    0.0
1    0.0
2    0.0
3    NaN
4    NaN
5    NaN
Name: A, dtype: float64

Что мне делать вместо df['A'].str.count('/w')?

Ответы [ 3 ]

1 голос
/ 25 мая 2020

Если вы хотите подсчитать количество строк во всех ячейках фрейма данных независимо от столбца, попробуйте следующее:

# convert all the cells of the df into a single list
ls = df.values.tolist()
ls = [item for sublist in ls for item in sublist]

count = 0

for val in ls:
    if isinstance(val, str):
        count += 1

print(count)

Вывод:

6
1 голос
/ 25 мая 2020

Попробуйте это

df['B'].str.count(r'\w+').sum()

Вывод

3.0
0 голосов
/ 25 мая 2020

Для вашей проблемы:

Сжатие списка должно решить вашу проблему.

x = len([x for x in list(df["A"]) if type(x) == str]) 

Вывод : 3

Для подсчета конкретного экземпляра c:

Я думаю, df.column_name.value_counts()[char] где df - имя фрейма данных column_name - имя рассматриваемого столбца, а char - это символ, число или строка, которые вы ищете.

Выполните df.A.value_counts()["a"], чтобы подсчитать количество a символа в столбце A из df фрейма данных.

Для чисел вы можете набрать df.A.value_counts()[1], чтобы подсчитать количество единиц в A столбце df.

...