99

Python 新手。

在 R 中,您可以使用 dim(...) 获取矩阵的维度。Python Pandas 的数据框对应的函数是什么?

4

2 回答 2

162

df.shapedf你的DataFrame在哪里。

于 2012-12-17T20:29:56.957 回答
32

获取有关 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属性返回 DataFrame 中行数和列数的两项元组。对于一个系列,它返回一个单项元组。

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 的每一列/行的非缺失值的数量。这可能非常令人困惑,因为大多数人通常认为 count 只是每行的长度,但事实并非如此。在 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
于 2017-11-06T14:44:05.603 回答