您的位置:首页 > 房产 > 建筑 > 商城平台开发公司_销售型公司_全球热搜榜排名今日_接广告的平台推荐

商城平台开发公司_销售型公司_全球热搜榜排名今日_接广告的平台推荐

2024/10/5 17:00:54 来源:https://blog.csdn.net/lijingheng66/article/details/142578326  浏览:    关键词:商城平台开发公司_销售型公司_全球热搜榜排名今日_接广告的平台推荐
商城平台开发公司_销售型公司_全球热搜榜排名今日_接广告的平台推荐

百家讲坛,谈论古今,今天我们不聊别的,我们来聊一聊中国的国宝——大熊猫(bushi)

好好,言归正传,我们今天来讲pandas

import pandas as pd

申明无需多言,高考主要考察Series和DataFrame的用法

一.Series 

1.声明

s1 = pd.Series([168,176,169]) #创建Series
s2 = pd.Series([168,176,169],index = ['s1','s2','s3']) #更改Series的index

两种声明方式 ,效果如图:

 2.遍历方式

for i in s2.values:print(i)  #输出所有值
for i in s2.index:print(i)  #输出所有index
for i in s2:print(i)  #输出所有值

三种遍历,没有指定则默认输出values,如第三个循环,效果如图:

3.值的获取,修改 

s2[0] = 123
s2["s2"] = 123
s2.s3 = 123  #三种修改值的方法s2["s4"] = 123  #若没有s4,则增加s4并赋值
s2.s5 = 123  #不可以使用这种方式

获取到对应的index并且拿出或者修改相应的值 ,修改后s2变为如图

二.DataFrame 

1.声明

df1 = pd.DataFrame({"姓名":["a1","a2","a3"],"身高":[168,169,170]})  #字典方式生成
df2 = pd.DataFrame({"姓名":["a1","a2","a3"],"身高":[168,169,170]},columns = ["姓名","成绩"]) #字典方式下,若设置了columns,则服从columns
df3 = pd.DataFrame([["a1",168],["a2",169],["a3",170]],columns = ["姓名","身高"],index=['s1','s2','s3'])  #列表方式生成,index和columns的位置可以互换
print(df3)

三种声明方式,字典可以不设置columns,若设置则服从设置,用列表则一定需要columns,效果如图:

2.读取excel 

df4 = pd.read_excel("test_01.xlsx") #读取excel文件

注意需要放在同一个目录下

为了方便大家学习,我们来整一点活把excel文件分享给大家,大家可以直接下载使用 

这是excel内的表格

这是pandas的输出 

3.遍历

for i in df4:print(i) #输出columns
for i in df4.columns:print(i) #输出columns
for i in df4.index:print(i) #输出index
for i in df4.values:print(i) #输出values 一个values为一行,输出形式为列表

输出效果如图 

import pandas as pd####################################################################################################
#########################################Series 使用#################################################
####################################################################################################s1 = pd.Series([168,176,169]) #创建Series
s2 = pd.Series([168,176,169],index = ['s1','s2','s3']) #更改Series的indexprint(s1)
print(s2)for i in s2.values:print(i)  #输出所有值
for i in s2.index:print(i)  #输出所有index
for i in s2:print(i)  #输出所有值s2[0] = 123
s2["s2"] = 123
s2.s3 = 123  #三种修改值的方法s2["s4"] = 123  #若没有s4,则增加s4并赋值
s2.s5 = 123  #不可以使用这种方式
print(s2)
####################################################################################################
####################################dataframe使用####################################################
####################################################################################################df1 = pd.DataFrame({"姓名":["a1","a2","a3"],"身高":[168,169,170]})  #字典方式生成
df2 = pd.DataFrame({"姓名":["a1","a2","a3"],"身高":[168,169,170]},columns = ["姓名","成绩"]) #字典方式下,若设置了columns,则服从columns
df3 = pd.DataFrame([["a1",168],["a2",169],["a3",170]],columns = ["姓名","身高"],index=['s1','s2','s3'])  #列表方式生成,index和columns的位置可以互换
print(df3)df4 = pd.read_excel("test_01.xlsx") #读取excel文件
print(df4)for i in df4:print(i,end = ' ') #输出columns
print("\n")
for i in df4.columns:print(i,end = ' ') #输出columns
print("\n")
for i in df4.index:print(i,end = ' ') #输出index
print("\n")
for i in df4.values:print(i) #输出values 一个values为一行,输出形式为列表print(df4.T) #行列转置,不对df4产生更改
print(df4.学校)
print(df4["学校"]) #获取对应columns下的列
print(df4[ ["学校","2020年分数线"] ]) #获取多个columns下的值,注意中括号的数量
print(df4[2:3]) #获取对应index下的值,使用切片,这里输出 index = 2 的整一行
print(df4["学校"][2])
print(df4.at[2,"学校"]) #获取对应行列下的值
print(df4[df4["2020年分数线"]>=530]) #获取2020年分数线大于530的学校的整行,格式为DataFrame
df4["2022年分数线"] = [1,2,9999,4,5,6,7,8,9,10,11,12,13,14,15]  #更改数据,若没有这一列,则追加该列,df4.只用于访问更改,不用于追加print(df4.count()) #统计每一列的个数(为非空 即不为 NaN 的个数)
print(df4["学校"].count()) #统计该列的个数print(df4.sum()) #计算每一列的总和
print(df4["排名"].sum()) #计算该列的总和print(df4["排名"].mean()) #计算该列的平均数print(df4["排名"].max())
print(df4["排名"].min()) #输出每一列的最大最小值,注:此处输出的是一个数值print(df4["2020年分数线"].describe()) #获取该列各种各样的统计的数据,比如百分位数,平均数等等print(df4.head())
print(df4.tail()) #返回DataFrame前n行或后n行,n默认为5df5 = pd.DataFrame([["s2c1神班",-1,99999,99999,99999]],columns=["学校","排名","2020年分数线","2021年分数线","2022年分数线"],index = [1])
df6 = pd.DataFrame({"学校":"s2c1神班","排名":-1,"2020年分数线":99999,"2021年分数线":99999,"2022年分数线":99999},index = [1])
df7 = df4._append(df5,ignore_index = True) #在df7后面追加df5,ignore_index默认为False,若为True,则追加的df的index接续上面的index,比如df4的结尾index为15,则神班的index=16
print(df7)df7.insert(loc = 2, column= "实力" , value = [0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,999999])
print(df7) #插入一列,插入后为第二列(从0开始编号),列标题为“实力”,注意value的个数一定等于行数print(df7.drop(["2021年分数线"],axis = 1)) #删除列,axis = 1表示删除列,注意:此处不改变df7的数值
print(df7.drop(0)) #删除第一行数据
print(df7.drop([0,1])) #删除多行数据,注意:后续index的值不变print(df7.sort_values(by = ["实力"])) #按照实力升序排位
print(df7.sort_values(by = ["实力"],ascending = False)) #按照实力降序排位
print(df7.sort_values(by = ["实力","排名"],ascending = False)) #先按照实力排位,若相同再按照排名排序

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com