Python - 数据框的维度

时间:2012-12-17 20:27:53

标签: python pandas

Python新手。

在R中,您可以使用dim(...)获取矩阵的维数。 Python Pandas中它们的数据框的相应功能是什么?

2 个答案:

答案 0 :(得分:118)

df.shape,其中df是您的DataFrame。

答案 1 :(得分:15)

获取有关DataFrame或Series

维度信息的所有方法的摘要

有很多方法可以获取有关DataFrame或Series的属性的信息。

创建示例DataFrame和系列

df = pd.DataFrame({'a':[5, 2, np.nan], 'b':[ 9, 2, 4]})
df

     a  b
0  5.0  9
1  2.0  2
2  NaN  4

s = df['a']
s

0    5.0
1    2.0
2    NaN
Name: a, dtype: float64

shape属性

shape属性返回数据帧中行数和列数的两项元组。对于Series,它返回一个项目元组。

df.shape
(3, 2)

s.shape
(3,)

len功能

要获取DataFrame的行数或获取Series的长度,请使用len函数。将返回一个整数。

len(df)
3

len(s)
3

size属性

要获取DataFrame或Series中的元素总数,请使用size属性。对于DataFrame,这是行数和列数的乘积。对于系列,这将等同于len函数:

df.size
6

s.size
3

ndim属性

ndim属性返回DataFrame或Series的维度数。 DataFrames始终为2,Series为1:

df.ndim
2

s.ndim
1

棘手的count方法

count方法可用于返回DataFrame的每个列/行的非缺失值的数量。这可能非常令人困惑,因为大多数人通常认为计数只是每行的长度,而不是。在DataFrame上调用时,将返回一个Series,其中索引中的列名称和非缺失值的数量为值。

df.count() # by default, get the count of each column

a    2
b    3
dtype: int64


df.count(axis='columns') # change direction to get count of each row

0    2
1    2
2    1
dtype: int64

对于一个系列,只有一个用于计算的轴,所以它只返回一个标量:

s.count()
2

使用info方法检索元数据

info方法返回每列的非缺失值和数据类型的数量

df.info()

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 2 columns):
a    2 non-null float64
b    3 non-null int64
dtypes: float64(1), int64(1)
memory usage: 128.0 bytes