Python dataframe посчитать количество строк

Подсчет и фильтрация строк в DataFrame Pandas

Чтобы подсчитать количество строк в DataFrame, вы можете использовать свойство shape или метод count().

DataFrame.shape возвращает кортеж, содержащий количество строк в качестве первого элемента и количество столбцов в качестве второго элемента. Индексируя первый элемент, мы можем получить количество строк в DataFrame.

DataFrame.count() со значениями параметров по умолчанию возвращает количество значений по каждому столбцу. Каждый столбец содержит одинаковое количество значений, равное количеству строк. Индексируя первый элемент, мы можем получить количество строк в DataFrame.

Пример 1: подсчет с помощью shape

В этом примере мы будем использовать свойство DataFrame.shape, чтобы получить количество строк.

import pandas as pd #initialize dataframe df = pd.DataFrame() #number of rows in dataframe num_rows = df.shape[0] print('Number of Rows in DataFrame :',num_rows)
Number of Rows in DataFrame : 4

Пример 2: с помощью count()

В этом примере мы будем использовать метод count() для подсчета количества строк в DataFrame.

import pandas as pd #initialize dataframe df = pd.DataFrame() #number of rows in dataframe num_rows = df.count()[0] print('Number of Rows in DataFrame :',num_rows)
Number of Rows in DataFrame : 4

В этом руководстве на примерах Python мы узнали, как подсчитать количество строк в заданном DataFrame разными способами с помощью примеров программ.

Читайте также:  Python query not in

Фильтрации строк

Чтобы отфильтровать строки в DataFrame, вы можете использовать функцию isin(). Она возвращает логический DataFrame, который при использовании с исходным фильтрует строки, которые подчиняются критериям фильтра.

Вы также можете использовать query() для фильтрации строк, удовлетворяющих заданному логическому выражению.

Пример 1: с помощью isin()

В этом примере мы возьмем DataFrame с двумя столбцами с именами a, b и четырьмя строками. Мы будем фильтровать при условии, что значения столбца a лежат в заданном диапазоне.

import pandas as pd #initialize dataframe df = pd.DataFrame() #check if the values of df['a'] are in the range(3,6) out = df['a'].isin(range(3,6)) #filter dataframe filtered_df = df[out] print('Original DataFrame\n-------------------\n',df) print('\nFiltered DataFrame\n-------------------\n',filtered_df)

Функция isin() возвращает True для строк, значения столбца в которых находятся в диапазоне (3,6). В противном случае функция возвращает false.

df [out] возвращает только те строки, значение которых равно True, что приводит к отфильтрованному выводу.

Original DataFrame ------------------- a b 0 2 2 1 4 0 2 8 9 3 5 7 Filtered DataFrame ------------------- a b 1 4 0 3 5 7

Пример 2: с помощью query()

В этом примере мы инициализируем DataFrame двумя столбцами a и b, содержащими четыре строки. Мы будем фильтровать те строки, у которых значение столбца b больше 4.

Мы будем использовать query() для фильтрации строк.

import pandas as pd #initialize dataframe df = pd.DataFrame() #get rows where that b>4 filtered_df = df.query('b>4') print('Original DataFrame\n-------------------\n',df) print('\nFiltered DataFrame\n-------------------\n',filtered_df)
Original DataFrame ------------------- a b 0 1 2 1 4 0 2 7 8 3 2 7 Filtered DataFrame ------------------- a b 2 7 8 3 2 7

В этом руководстве на примерах Python мы узнали, как фильтровать DataFrame на основе условий, применяемых к значениям его столбцов.

Источник

Как получить количество строк в Pandas DataFrame

Как получить количество строк в Pandas DataFrame

  1. .shape метод для получения количества строк DataFrame
  2. .len(DataFrame.index) быстрейший метод получения количества строк в Pandas
  3. dataframe.apply() для подсчета строк, удовлетворяющих условию в Pandas

Мы познакомимся с тем, как получить количество строк в Pandas DataFrame , используя различные методы, такие как shape и len(DataFrame.index) . Существуют заметные различия в производительности, которые мы обнаружили, что len(DataFrame.index) является самым быстрым.

Мы также смотрим, как мы можем использовать dataframe.apply() для получения того, сколько элементов строк удовлетворяет условию или нет

.shape метод для получения количества строк DataFrame

Предположим, что df — это наш DataFrame , для подсчета рядов:

# python 3.x import pandas as pd import numpy as np df = pd.DataFrame(np.arange(15).reshape(3,5)) print(df) print('Row count is:',df.shape[0]) 
 0 1 2 3 4 0 0 1 2 3 4 1 5 6 7 8 9 2 10 11 12 13 14 Row count is: 3 

Для подсчета столбцов мы можем использовать df.shape[1] .

.len(DataFrame.index) быстрейший метод получения количества строк в Pandas

Мы можем вычислить строки в DataFrame , получив индекс длины переменных-членов:

# python 3.x import pandas as pd import numpy as np df = pd.DataFrame(np.arange(15).reshape(3,5)) print(df) print('Row count is:',len(df.index)) 
 0 1 2 3 4 0 0 1 2 3 4 1 5 6 7 8 9 2 10 11 12 13 14 Row count is: 3 

мы также можем передать df.axes[0] вместо df.index :

# python 3.x import pandas as pd import numpy as np df = pd.DataFrame(np.arange(15).reshape(3,5)) print(df) print('Row count is:',len(df.axes[0])) 
 0 1 2 3 4 0 0 1 2 3 4 1 5 6 7 8 9 2 10 11 12 13 14 Row count is: 3 

Для подсчета колонок можно использовать df.axes[1] .

dataframe.apply() для подсчета строк, удовлетворяющих условию в Pandas

На основе результата dataframe.apply() подсчета числа True в возвращаемом цикле мы можем узнать элементы строк в DataFrame , удовлетворяющие условию .

# python 3.x import pandas as pd import numpy as np df = pd.DataFrame(np.arange(15).reshape(3,5)) counterFunc = df.apply(  lambda x: True if x[1] > 3 else False , axis=1) numOfRows = len(counterFunc[counterFunc == True].index) print(df) print('Row count > 3 in column[1]is:',numOfRows) 
 0 1 2 3 4 0 0 1 2 3 4 1 5 6 7 8 9 2 10 11 12 13 14 Row count > 3 in column[1]is: 2 

Мы получаем количество строк, значение которых в column[1] больше 3.

Copyright © 2023. All right reserved

Источник

Как подсчитать количество строк в Pandas DataFrame

Есть три метода, которые вы можете использовать для быстрого подсчета количества строк в кадре данных pandas:

#count number of rows in index column of data frame len(df.index ) #find length of data frame len(df) #find number of rows in data frame df.shape [0] 

Каждый метод вернет один и тот же ответ.

Для небольших наборов данных разница в скорости между этими тремя методами незначительна.

Для чрезвычайно больших наборов данных рекомендуется использовать len(df.index) , так как было показано, что это самый быстрый метод.

В следующем примере показано, как использовать каждый из этих методов на практике.

Пример: подсчет количества строк в Pandas DataFrame

В следующем коде показано, как использовать три метода, упомянутых ранее, для подсчета количества строк в кадре данных pandas:

import pandas as pd #create DataFrame df = pd.DataFrame() #view DataFrame df y x1 x2 x3 0 8 5 11 2 1 12 7 8 2 2 15 7 10 3 3 14 9 6 2 4 19 12 6 5 5 23 9 5 5 6 25 9 9 7 7 29 4 12 9 8 31 5 8 11 9 30 4 8 7 10 31 7 9 7 11 31 7 9 8 #count number of rows in index column of data frame len(df.index ) 12 #find length of data frame len(df) 12 #find number of rows in data frame df.shape [0] 12 

Обратите внимание, что каждый метод возвращает один и тот же результат. DataFrame имеет 12 строк.

Источник

pandas.DataFrame.count#

The values None , NaN , NaT , and optionally numpy.inf (depending on pandas.options.mode.use_inf_as_na ) are considered NA.

Parameters axis , default 0

If 0 or ‘index’ counts are generated for each column. If 1 or ‘columns’ counts are generated for each row.

numeric_only bool, default False

Include only float , int or boolean data.

Returns Series or DataFrame

For each column/row the number of non-NA/null entries. If level is specified returns a DataFrame .

Number of non-NA elements in a Series.

Count unique combinations of columns.

Number of DataFrame rows and columns (including NA elements).

Boolean same-sized DataFrame showing places of NA elements.

Constructing DataFrame from a dictionary:

>>> df = pd.DataFrame("Person": . ["John", "Myla", "Lewis", "John", "Myla"], . "Age": [24., np.nan, 21., 33, 26], . "Single": [False, True, True, True, False]>) >>> df Person Age Single 0 John 24.0 False 1 Myla NaN True 2 Lewis 21.0 True 3 John 33.0 True 4 Myla 26.0 False 

Notice the uncounted NA values:

>>> df.count() Person 5 Age 4 Single 5 dtype: int64 

Counts for each row:

>>> df.count(axis='columns') 0 3 1 2 2 3 3 3 4 3 dtype: int64 

Источник

Оцените статью