内容正文:
s1=pd.Series([166,178,180])
print(s1)
运行结果:
左列:index
0166
178
1
右列:values
2
180
dtype:int64
Series
属性:
访问某个属性:
访问谋个值:
import pandas as pd
dat={"姓名":["王静怡","张佳妮","李臣武"门,"性别"["女","女","男"门,"借阅次数":28,56,37]}
df1=pd.DataFrame(data,columnsa=["姓名","性别","借阅次数")
print(df1)
设定df1中数据列的顺序
运行结果:
姓名
性别
借阅次数
0
王静怡
女
28
1
张佳妮
女
56
2
李臣武
男
37
DataFrame:
属性:
访问某列:
属性:
字典:
访问某行:
切片法:
访问某个值:
at[]方法:
总结:
①添加行数据:
df1=df.append(数据,ignore_index=True)
不改变
原数据
②删除行数据:
df1=df.drop(行索引)
删除列数据:
df1=df.drop(“列标”,axis=1)
axis=0删除行,axis=1删除列,默认axis=0
③删除命令
del df[列标]
改变原
数据
④插入列数据:
df.insert(i,j,k
⑤修改index和columns
6.合并DataFrame对象:
df1=df.rename(index={},columns={})
df1 pd.concat([df2,df3,df4])
inplace=True
会改变原数据
有oython程序如下:
水果
数量
单价品质
import pandas as pd
0
30
7.6优
fruits-={“水果”:[苹果”,“香蕉”,“西瓜],
1
120
2.5
“数量”:[30,120,12]
2
西瓜
12
8.8
是
“单价”:[7.6,2.5,8.8]
“品质:[“优”,“良”,“好]}
f=pd.DataFrame(fruits,columns=[“水果,“数量,“单价,”品质])
pandas模块包括两种数据结构,分别是一维()属性是
()和二维()属性是
②
写出对象f的结果
③
若需要将西瓜的数量修改为55,:
实现的代码是
④
输出品质为“优”的数据行
f.at[2,”数量]=55
⑤
若需要将“数量这一列删除,f[f.品质=”优"】1,
实现代码为
⑥
若需要在“单价列后插入一列为“nice”,值为2,4,6,实现
f1=f.drop(数量',axis=1)
⑦
现需要在对象f的结尾处增加橘子的信息,数量为33,,·f.insert(3,“nice”,[2,4,6])
里df2=f.appendi(“水果”:“橘子”,“数量”:33,“单价:4.9,“品质”:“优"”,
ignore_index=True)
有oython程序如下:
import pandas as pd
ok={“a:[1,2,3],“b”:[4,5,6],“c”:[7,8,9]}
jk=pd.DataFrame(ok,columns=[“a,“b”,“c"])
写出对像k的结果
②
若需要将6改为66,实现的代码是
若需要将“b”这一列删除,并得到一个新对像jk1,实现代码为
若需要在“a”列后插入一列为“×”,值为11,22,33,实现代码为
现需要在对像jk的结尾处新增加一行数据,数据为33,44,55,并得到一个新的对象jk2,
实现代码为
class
name
math
chinese
english
浙一
甄漂亮
128
98
112
浙一
撒微笑
119
110
111
浙二
何美男
112
115
109
实一
鬼少女
116
112
105
浙二
梅毛冰
120
108
103
浙二
魏什么
121
109
106
实二
潘刮痧
115
113
113
浙二
撒煎饼
116
112
104
问题1:如何求各班型的人数,以及各班型的英语平均成绩。
见
统计、计算
回
1.分组
使用groupby)函数,可以对DataFrame对象各列域各行中
的数据进行分组,然后对其中每一组数据进行不同的操作。
格试
对象名.groupby(“列标as index=:False
实
class name
math
chinese
english
统计、计算
3
实实,
鬼少女
116
112
105
潘刮痧
115
113
113)
浙
class name
math
chinese
english
0
浙
甄漂亮
28
98
112
撒微笑
119
110
111)
import par
cla
name
ma十h
chinese
enolish
df=pd.reac0
实
class
english
2
1
math
2
#将df按班2
class
chinese
english
0
115.50
112.5
109.0
1
df1=df.groupby('1
123.50
104.0
111.5
浙二
117.25
111.0
105.5
print(
df1.count()
)#统计班型的人数(
计数函数)
print(
df1.english.mean()#平均值函数(英语平均值)
例2:将d对像中的数据按“地区”分组,并计算分组后各组数据的平均值。
g=
df.groupby(“地区',as_index:=False)
#按“地区”分组
print(g.mean()
#求每组数据的平均值
分组、求平均值,也可以写成:
g=df.groupby(“地区'”,as_index-=False).mean()
练习:
某DataFrame对象score包含”准考证号”学校名称”姓名”总分”排名'
等数据列,下列语句中,可以以学校为单位,输出各校学生总分平均值的是()
A
A.printe(score.groupby('学校名称',as_index=False).mean(0)
B.print(score.groupby('总分',as_index=False).mean0)
C.printe(score.groupby('学校名称',as_index-=False)排名.mean0)
D.printe(score.groupby('姓名',as_index:=False).mean(O)
import pandas as pd
可
df=pd.read excel("grade.xlsx")
df1=df.groupby('class',as_index=False)
print(df1.mean())
class
math
chinese
english
0
1
115.50
112.5
109.0
123.50
104.0
111.5
2
浙二
117.25
111.0
105.5
import pandas as pd
df=pd.read excel("grade.xlsx")
df1=df.groupby('class',as index=True)
print(df1.mean())
math
chinese
english
class
115.50
112.5
109.0
123.50
104.0
111.5
浙二
117.25
111.0
105.5