Получить размер объекта из read_csv в pandas

#python #pandas #csv #kaggle

#python #pandas #csv #kaggle

Вопрос:

Я читаю файл csv и нахожу размер этого

 import pandas as pd
data = pd.read_csv("train.csv")
data.size
  

В результате я получил 10692
Но я пробую другой способ

 y = data["Survived"]
  

На этот раз я получил только 891 в длину. Как я думаю, это должно быть 10692.
Хотите узнать разницу?
Я загрузил данные здесь

https://www.kaggle.com/c/titanic/data?select=train.csv

Ответ №1:

Это ожидаемо, потому что DataFrame.size работая по-другому, он подсчитывает все значения фрейма данных.

 data = pd.DataFrame({
        'A':list('abcdef'),
         'B':[4,5,4,5,5,4],
         'Survived':[7,8,9,4,2,3],

})

print (data)
   A  B  Survived
0  a  4         7
1  b  5         8
2  c  4         9
3  d  5         4
4  e  5         2
5  f  4         3

#3 columns x 6 rows = 18
print (data.size)
18

y = data["Survived"]
print (y)
0    7
1    8
2    9
3    4
4    2
5    3
Name: Survived, dtype: int64

#nuber of values in Series/column
print (y.size)
6
  

Если требуется количество строк и столбцов:

 print (data.shape)
(6, 3)
  

Или количество строк:

 print (len(data))
6
  

Ответ №2:

10692 — это общее количество элементов, содержащихся в наборе данных.

Он содержит 891 строку и 12 столбцов.

 df = pd.read_csv("train.csv")
df.info()

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 891 entries, 0 to 890
Data columns (total 12 columns):
 #   Column       Non-Null Count  Dtype  
---  ------       --------------  -----  
 0   PassengerId  891 non-null    int64  
 1   Survived     891 non-null    int64  
 2   Pclass       891 non-null    int64
   .....
  

Ответ №3:

Более того data.info () — это другой способ получить информацию о форме вашего фрейма данных. Чтобы получить точный «размер» с точки зрения использования памяти, просто добавьте параметр memory_usage=»глубокий».