python数据分析复习(3)

147 阅读2分钟

python数据分析——数组切片

标注:图片来自(Pandas 常用函数 | 菜鸟教程 (runoob.com))

数组切片

使用内置函数slice()切片

import numpy as np
a = np.arange(10)
s = slice(2,7,2) # 从索引 2 开始到索引 7 停止,间隔为2 
print (a[s])

使用冒号切片

import numpy as np
a = np.arange(10)
b = a[2:7:2] # 从索引 2 开始到索引 7 停止,间隔为 2
c = a[2::2] # 从索引 2后面所有的索引,间隔为 2
print (a[b])
print (a[c])

使用省略号进行切片

import numpy as np
a = np.array([[1,2,3],[3,4,5],[4,5,6]]) 
print (a[...,1]) # 第2列元素 
print (a[1,...]) # 第2行元素 
print (a[...,1:]) # 第2列及剩下的所有元素

其他切片方法

image.png

数组排序

# 按照指定列的值排序  
df.sort_values('column_name')  
# 按照多个列的值排序  
df.sort_values(['column_name1', 'column_name2']ascending=[TrueFalse]) 
# 按照索引排序  
df.sort_index()

数组分组和聚合

函数说明
df.groupby(column_name)按照指定列进行分组;
df.aggregate(function_name)对分组后的数据进行聚合操作;
df.pivot_table(values, index, columns, aggfunc)生成透视表。
# 按照指定列进行分组  
df.groupby('column_name')  
# 对分组后的数据进行聚合操作  
df.aggregate('function_name')  
# 生成透视表  
df.pivot_table(values='value'index='index_column', columns='column_name', aggfunc='function_name')

数据合并

函数说明
pd.concat([df1, df2])将多个数据框按照行或列进行合并;
pd.merge(df1, df2, on=column_name)按照指定列将两个数据框进行合并。

数据选择和过滤

函数说明
df.loc[row_indexer, column_indexer]按标签选择行和列。
df.iloc[row_indexer, column_indexer]按位置选择行和列。
df[df['column_name'] > value]选择列中满足条件的行。
df.query('column_name > value')使用字符串表达式选择列中满足条件的行

数据统计和描述

函数说明
df.describe()计算基本统计信息,如均值、标准差、最小值、最大值等。
df.mean()计算每列的平均值。
df.median()计算每列的中位数。
df.mode()计算每列的众数。
df.count()计算每列非缺失值的数量。