定义:pandas是基于NumPy数组构建的,使数据预处理、清洗、分析工作变得更快更简单。pandas是专门为处理表格和混杂数据设计的,而NumPy更适合处理统一的数值数组数据。
import pandas as pd
数据结构:Series | DataFrame。
Series:pd.Series(list,index=[ ]) 类似于一维数组的得对象,是由一组数据+一列索引组成。可以使用切片,运算等操作,类似于ndarray。
DataFrame:pd.DataFrame(data,columns = [ ],index = [ ]) 是一个表格形的数据类型。常用类型。axis = 1 列 axis = 0 行
数据转换:
1:pd.DataFrame(Series) 可以把Series结构变为DataFrame。
2:DataFrame.values 可以把DataFrame结构变为 一个numpy 的ndarray。也可以通过索引或者列名获得一个Series。df["列名"] 或者 df.列名。
常用方法:
1,df.reset_index(drop=True) 重置索引,会创建一个新对象。默认保留原来索引,加上drop=True删除原来索引。
2,df.set_index() 设置一列索引。
3,df.drop() 删除指定行值或列值(axis = 1 列 axis = 0 行,默认为行)。
df.drop(index=df[df["价格"].isnull()].index, inplace=True) #例如:删除价格为空的所有行
4,del df["列"] 删除一列值。
5,df.dropna() 删除指定的行或者列 为空 的值。
6,df.drop_duplicated() 删除重复值,可指定列,指定保留第一行,或者最后一行。
7,df.loc["行","列"] 通过标签定位数据,df.iloc[:] 通过索引定位数据。
8,df.sort_values("列",axis=0, ascending=True) 排序。Series不需要参数列,ascending默认True升序。
9,df.describe() 快速列出数据的概要,多个维度的汇总统计。
10,df.info() 索引,数据类型,内存信息等。
11,df.unique() 返回一个Series里面唯一值组成的数组。
12,df.sum() 计算一列的和。
13,df.count() 计算非NaN值的总量。
14,df.mean() 计算一列的平均值。
15,df.median() 计算一列的中位数。
16,df.mode() 计算一列的众数。
17,df.var() 计算一列的方差。
18,df.std() 计算一列的标准差。
19,df.min() 计算一列的最小值。
20,df.max() 计算一列的最大值。
21,df.value_counts() 计算一列中数据出现的频率。
22,df.groupby() 分组。
23,df.head() 取出数据的前几行。
24,df.tail() 取出数据的后几行。
25,read_csv(),read_excel(),read_sql(),read_json(),read_html() 等.... pandas提供的读取数据方法。
26,to_excel() 写入excel文件,可以用pd.ExcelWriter()申明对象存储多个sheet。
27,pd.contact() ,pd.append() 行数据合并拼接,只在axis = 0上操作。
28,pd.merge() 数据关联操作,类sql,可以设置关联方向:left, right,inner,outer。 join()类merge,但是只能在索引关联。
29,pd.rename(columns={"原名":"修改名"}, inplace = True) 修改列名。
30,df["列"].fillna(0) 把一列里面为空的赋值为0.
31,df["列"].astype(int) 转换一列数据类型。
32,df.agg() 指定列或者行上 一个或者多个操作数据聚合。
...后续陆续加入