python基础(pandas库)

一、基本数据类型

python 复制代码
df_1 = pd.DataFrame({'age':[10,11,12],
                     'name':['tim', 'tom', 'rose'],
                     'income':[100,200,300]},
                     index=['lisi', 'zhangsan', 'wangwu'])
print(df_1)

"""
dataframe的属性
"""
#行索引
df_1.index
#列名
df_1.columns
#值
df_1.values

DataFrame为数据框就是excel表(多个Series的拼接),serise可以看作竖起来的list,dataframe的属性,行索引为index,列名为colums,值为values

python 复制代码
"""
根据年龄这一列,进行排序【升序和降序】
"""
df = df.sort_values(by=['age'])
df = df.sort_values(by=['age'], ascending=False)

使用sort_values函数进行排序,ascending参数默认为True为升序排序,False为降序排序

二、重复值处理

python 复制代码
"""找出重复值的位置【逻辑判断】"""
result1 = df.duplicated()

"""根据列名来判断重复"""
#根据某个
result2 = df.duplicated('gender')
print(result2)

result3 = df.duplicated(['gender', 'name'])
print(result3)

"""提取重复的行"""
a = df[result1]
b = df[result2]
c = df[result3]

'通过bool提取内容'
d = df[[True,False,False,True,True,False,False]]

"""删除重复的行"""
new_df1 = df.drop_duplicates()

#部分重复【根据某列名来删除】
new_df2 = df.drop_duplicates(['name', 'gender'])
print(new_df2)

通过duplicated(参数)函数判断重复值的位置,如果值重复填入True。

参数:可以填列名来判断指定的列是否有重复

可以通过drop_duplicates(参数)函数来删除重复的行

参数也可以是列名,来根据列名删除

三、数据抽取

python 复制代码
#抽取好评数大于17000的电脑
a = df['好评数'] > 17000
df_1 = df[df['好评数'] > 17000]
#抽取好评数在15000到17000之间的电脑
df_2 = df[df['好评数'].between(15000, 17000)]

"""
字符匹配
"""
df_3 = df[df['品牌'].str.contains('苹果',na=False)]
df_4 = df[df['品牌'].str.contains('苹果',na=True)]

想要从里面取数可以用比较运算:包含大于、小于等运算 逻辑判断+取数,逻辑判断可以加上与和或的语句。

.str.contains('苹果') :对"品牌"列的每个元素进行字符串匹配,检查是否包含 "苹果" 子串,返回布尔值 ,True:包含,False:不包含)。
na=False:指定对缺失值(NaN)的处理方式 ------ 将缺失值视为 False(即不筛选包含缺失值的行)。

四、数据框的合并

python 复制代码
#竖向合并
new_df1 = pd.concat([df_2, df_1])
#横向合并
new_df2 = pd.concat([df_1, df_2], axis=1)

使用concat函数进行合并数据,axis参数为1时是横向合并,不写时默认为0,为纵向合并

相关推荐
缓慢更新17 小时前
AI 辅助生成单测:从接口定义到用例的流水线
java·服务器·前端·网络·数据库·人工智能
叼烟扛炮17 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
叼烟扛炮18 小时前
Linux 学习笔记(四十四):HTTP 协议解析与极简 Web 服务器实战
linux·服务器·学习
专注仿真19 小时前
梯度提升类(XFBoost)算法详解与代码实例
开发语言·人工智能·python·算法·大模型训练·控制算法
外收内放19 小时前
Python基础语法练习题(75)
开发语言·python·学习
开开心心就好20 小时前
音频降噪剪辑工具,音量裁剪一键处理
运维·服务器·前端·spring·ocr·音视频·1024程序员节
一枕槐安48720 小时前
大模型限流、重试、超时处理:API 调用健壮性方案
linux·服务器·php·大模型api·指数退避·限流控制·超时预算
黑十20 小时前
PyTorch 报 “no CUDA GPUs are available“ 怎么办?3 步排查
服务器·网络·人工智能·pytorch·python
threelab21 小时前
开源图片去水印代码
python
Ruiery1 天前
Linux 6.6内核并发与同步(五):mutex 可睡眠锁
linux·运维·服务器