【python数据处理】pandas快速入门集合
2021/11/28 17:10:39
本文主要是介绍【python数据处理】pandas快速入门集合,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录
Pandas常用数据类型
Series的使用
为Series指定索引值
通过字典创建Series
更改dtype
切片和索引
DataFrame的使用
DataFrame基础属性
排序
选择
缺失数据的处理
处理方式
import pandas as pd
Pandas常用数据类型
1.Series一维,带标签数组(即索引,第一列为索引,第二列为数据)
Series对象本质上由两个数组构成,一个数组构成对象的键(index索引),一个数组构成对象的值(values),键->值
2.DataFrame二维,Series容器
Series的使用
t = pd.Series([1,2,31,12,3,4]) ''' 0 1 1 2 2 31 3 12 4 3 5 4 dtype: int64 ''' print(type(t)) # <class 'pandas.core.series.Series'>
为Series指定索引值
t2 = pd.Series([1,23,2,2,1], index = list("abcde"))
a 1
b 23
c 2
d 2
e 1
dtype: int64
通过字典创建Series
temp_dict = {"name":"xiaoming","age":30,"tell":10086} t3 = pd.Series(temp_dict) print(t3) ''' name xiaoming age 30 tell 10086 dtype: object '''
更改dtype
t2.astype(float)
a 1.0
b 23.0
c 2.0
d 2.0
e 1.0
dtype: float64
切片和索引
可以像字典一样直接用key或索引取值
切片:直接传入start end 或者步长即可
索引:一个的时候直接传入序号或者index,多个的时候传入序号或index列表
t3[0] #'xiaoming'
t3["age"] #30
t3[["age","tell"]]
age 30
tell 10086
dtype: object
还可以通过布尔索引来判断值取出:
t[t>4]
2 31
3 12
dtype: int64
DataFrame的使用
import pandas as pd
import numpy as np
pd.DataFrame(np.arange(12).reshape(3,4))
0 1 2 3
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
DataFrame既有行索引又有列索引:
行索引:横向,index,0轴,axis=0
列索引:纵向,columns,1轴,axis=1
t1 = pd.DataFrame(np.arange(12).reshape(3,4),index=list("abc"),columns=list("WXYZ"))
W X Y Z
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
可以分别对index和columns切片或索引取值
DataFrame基础属性
- DataFrame是Series的容器
- DataFrame也可以传入字典(key相同,values为一个列表),或用列表传入多个key相同的字典
df.shape #行数,列数 df.dtypes #列数据类型 df.ndim #数据维度 df.index #行索引 df.columns #列索引 df.vaues #对象值,ndarray数组 df.head(3) #显示头部几行,默认5行 df.tail(3) #显示尾部几行,默认5行 df.info #相关信息预览:行数,列数,列索引,列非空值个数,行类型,列类型,内存占用 df.describe() #快速综合统计结果:计数,均值,标准差,最大值,四分位数,最小值
排序
t1_sorted = t1.sort_values(by = "W")
选择
通过标签进行获取:loc
t1.loc["a","Z"] # 3
t1.loc["a"]
W 0
X 1
Y 2
Z 3
Name: a, dtype: int32t1.loc[["a","b"],["W","Z"]]
W Z
a 0 3
b 4 7t1.loc["a":"c",:] # 注意loc中的冒号是闭合区间
W X Y Z
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
通过位置进行获取:iloc
t1.iloc[0]
W 0
X 1
Y 2
Z 3
Name: a, dtype: int32t1.iloc[:,0]
a 0
b 4
c 8
Name: W, dtype: int32
同样也可以使用布尔索引
&且 |或
缺失数据的处理
判断数据是否为NaN:pd.isnull(xxx)或pd.notnull(xxx)
处理方式
- 删除nan所在的行列dropna(axis=0,how="any",inplace=False
- 填充数据,t.fillna(t.mean())或t.fiallna(t.median())或t.fillna(0)
其中,在删除nan所在行列时,how为any代表只要有nan就都删,或者all为全部是nan时才删;inplace代表是否原地替换该DataFrame
这篇关于【python数据处理】pandas快速入门集合的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程