Pandas的下载
控制台中输入命令:pip install pandas进行下载pandas
pandas下载成功后,会出现上述界面
pandas提供了使我们能够快速便捷地处理结构化数据的大量数据结构和函数
pandas兼具NumPy高性能的数组计算功能以及电子表格和关系型数据库灵活的数据处理功能
Series
Series是一种类似于一维数组的对象,由数据(各种NumPy数据 类型)以及与之相关的数据标签(即索引)组成
可以通过字典构建Series对象,Series对象的索引也是可以修改的
举例:
import pandas as pd
data = [1, 2, 3]
series1 = pd.Series(data=data)
print(series1, type(series1))
# 获取下标为0的数据
print(series1[0])
print(">" * 70)
# 通过字典创建series
data1 = {1: "java", 2: "python", 3: "scala"}
series2 = pd.Series(data=data1)
print(series2, type(series2))
# 根据key值进行获取数据
print("根据key值获取数据:"+series2[2])
print(">" * 70)
# 创建series给定下标 根据给定key值进行创建
series3=pd.Series(data=data1, index=[2, 3])
print(series3)
结果:
相关函数:获取最大值与获取最小值:series1.max();series1.min()
结果:
DataFrame
DataFrame是一个表格型的数据结构,它含有一组有序的列,每 列可以是不同的值类型(数值、字符串、布尔值等)
DataFrame既有行索引也有列索引,可以看做由Series组成的字典
DataFrame的创建
DataFrame的创建可以通过字典创建,也可以通过列表创建,在使用列表创建时,默认情况下输出的列名称为数字顺序,可以在创建时加入设置列名称:columns=... ...
# 创建dataframe,通过字典创建
data2 = {
"Language": ["Python", "java", "scala", "sql"],
"application": ["pyspark", "hadoop", "spark", "hive"]
}
df = pd.DataFrame(data=data2)
print(df)
# 通过列表创建,可以增加列名称
data3 = [["java", "1"], ["Python", "2"], ["scala", "3"]]
df2 = pd.DataFrame(data=data3, columns=["Language", "Number"])
print(df2)
结果:
当dataframe中只有一列数据时,仍然表示的是一个dataframe,而不是series
data4=[[10],[20],[30]]
df3=pd.DataFrame(data4)
print(df3,type(df3))
删除操作:
使用Drop方法进行删除操作
格式:DataFrame.drop(labels=["行/列名称"],axis=0:表示行/1:表示列)
当想要进行删除操作时,需要指定删除的是行数据还是列数据
这里的指定有一个变量axis,若在进行删除操作时,不加axis的值,axis默认为0,表示删除行数据
但是这里进行删除后的dataframe是一个新的dataframe,若想使被删除的原dataframe在删除后变为删除后的表,需要使用inplace方法进行替换
格式:DataFrame.drop(labels=["行/列名称"],axis=0:表示行/1:表示列,inplace=True)
这里的inplace默认为False
# 删除df2中的列数据Number
df4=df2.drop(labels=["Number"], axis=1)
print(df4)
# 这里删除后的数据存到了df4中,df2中并未被删除
#使用inplace使df2中数据也被删除
print(">" * 70)
df2.drop(labels=["Number"], axis=1, inplace=True)
print(df2)
结果:
获取操作:
dataframe中进行获取数据时,有多种获取数据的方法
获取列数据:
1、通过key(列)获取数据
2、通过.+列名称进行获取