初探pandas——索引和查询数据
索引
import pandas as pd
ser=pd.Series(range(0,10,2))
print(ser)
0 0
1 2
2 4
3 6
4 8
dtype: int64
通过索引值或索引标签获取数据
通过index查看索引值
print(ser.index)
RangeIndex(start=0, stop=5, step=1)
自定义索引值
ser.index=['a','b','c','d','f']
print(ser)
a 0
b 2
c 4
d 6
f 8
dtype: int64
通过索引值和索引标签获取数据
print('ser[3]:',ser[3])
print('ser[d]:',ser['d'])
print('ser[[1,2,3]]:',ser[[1,2,3]])
print("ser[['a','b','c']]:",ser[['a','b','c']])
print('ser[3:]:',ser[3:])
ser[3]: 6
ser[d]: 6
ser[[1,2,3]]: b 2
c 4
d 6
dtype: int64
ser[['a','b','c']]: a 0
b 2
c 4
dtype: int64
ser[3:]: d 6
f 8
dtype: int64
自动化对齐
如果对两个序列进行运算,索引就会将元素对齐进行运算
a=pd.Series([1,2,3,4,5,6],index=['a','b','c','d','f','g'])
print(a)
b=pd.Series([4,5,6,7,8,9],index=['g','f','d','c','b','a'])
print(b)
print(a+b)
a 1
b 2
c 3
d 4
f 5
g 6
dtype: int64
g 4
f 5
d 6
c 7
b 8
a 9
dtype: int64
a 10
b 10
c 10
d 10
f 10
g 10
dtype: int64
利用pandas查询数据
import pandas as pd
stu_dic={
'name':['a','b','c','d','e','f','g','h'],
'age':[18,15,45,56,89,78,45,12],
'sex':['f','m','m','f','f','f','m','m']
}
student=pd.DataFrame(stu_dic)
print(student)
name age sex
0 a 18 f
1 b 15 m
2 c 45 m
3 d 56 f
4 e 89 f
5 f 78 f
6 g 45 m
7 h 12 m
查询数据前5行或后5行
# 查询前5行
student.head()
# 查询后5行
student.tail()
# 查询前5行
print(student.head())
print('* '*10)
#查询后5行
print(student.tail())
name age sex
0 a 18 f
1 b 15 m
2 c 45 m
3 d 56 f
4 e 89 f
* * * * * * * * * *
name age sex
3 d 56 f
4 e 89 f
5 f 78 f
6 g 45 m
7 h 12 m
查询指定的行
student.loc[[1,2,3]]
loc标签索引函数必须是中括号
# 查询第1,2,3行
print(student.loc[[1,2,3]])
name age sex
1 b 15 m
2 c 45 m
3 d 56 f
查询指定的列
student[['name','age']]
如果查询多个列,必须使用双重中括号
# 查询name,age列
print(student[['name','age']])
name age
0 a 18
1 b 15
2 c 45
3 d 56
4 e 89
5 f 78
6 g 45
7 h 12
查询18岁以上女生信息
student[(student['sex']=='f')&(student['age']>=18)]
print(student[(student['sex']=='f')&(student['age']>=18)])
name age sex
0 a 18 f
3 d 56 f
4 e 89 f
5 f 78 f
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· PPT革命!DeepSeek+Kimi=N小时工作5分钟完成?
· What?废柴, 还在本地部署DeepSeek吗?Are you kidding?
· DeepSeek企业级部署实战指南:从服务器选型到Dify私有化落地
· 程序员转型AI:行业分析