Pandas进行数据分析

dataframe添加列:df2.drop('新增加的列:',axis=1,inplace=True)

在Pandas中,DataFrame的列是Series对象,而Series对象具有一系列字符串处理方法。要对Series中的字符串进行操作,需要使用.str属性来访问这些字符串方法。删除列中的横线
df2['来源明细'].str.lstrip('-')

转格式:df2['日期'] = pd.to_datetime(df2['日期'])

前13行:df2.iloc[:13,:]

loc和iloc的使用:

第一列和第5列:df2.iloc[:,[0,4]],使用df2.loc[:,[0,4]]则报错

使用loc进行bool条件筛选:df2.loc[df2['图书类型']=='小说',:]

使用名称进行列筛选:df2.loc[:,['图书类型','来源']]

pd.merge()表横向合并:

必须的参数是左表和右表

索引列没有字段名,参数写left_index=True, right_index=True

类似数据库中的左连接右连接内连接和外连接,how='left/right/inner/outer'

指定匹配的字段: on=

pd.dropna()删除空行,会创建一个新的df

修改源数据df = df.dropna()

参数为空时,只要数据有空时就会删除一行。

指定列出现空值继续删除可以用:df.dropna(subset=['支付转化率'])

repeat.drop_duplicates()去重
subset 参数,删除这个字段重复的行,保留了各自不重复的第一行。如果要保留最后一行,再指定参数keep='last'

df.sort_values('字段名', ascending=False)
ascending默认True,升序。无论那种,会将nan值的放在最后边。

筛选前三df.sort_values('客单价', ascending=False).head(3)

inplace=False默认时False,尽量不要设置为True。

df.groupby()进行分组

分组完后,不会有输出。要有输出,需要加上sum(),mean()函数

例如df.groupby('地区').sum(),默认将地区作为索引,如果想要数字为索引,groupby 内传入参数 as_index = False

(sum函数中有参数和没参数输出都是一样的,本来就不应该有参数)

如果只想查看某个字段,可以使用df.groupby('地区')['客单价', '利润'].sum()

pd.cut()分组

bins对访客进行分区。labels表示标签类型。right默认为True,表示前开后闭,设置为False,前闭后开。

添加一行新的列,对访客量打上一个级别标签:
df['访客数标签级别'] = pd.cut(df['访客数'], bins=[0,100,1000,10000,100000], right=False, labels=['十','百','千','万'])

获取分组后最大最小值,并保持pd格式。感觉没区别,第一种还更加简单,第二种Tab不出来函数。
score.groupby('姓名', as_index=False)[总成绩'].max()
score.groupby('姓名')['总成绩'].apply(min).reset_index()
pd.merge()合并两张表可以将最大值和最小值放在同一个表里

地区中,排名第三利润的城市:

复制代码
orderSort = order.sort_values(['省份','近1月销售额'], ascending=False).head(20) # 根据地区和销售额进行排名
def get_third(x):
    if len(x) <= 2:
        return x.iloc[len(x)-1,:]
    else:
        return x.iloc[2,:]
orderSort.groupby('省份')[['城市','近1月销售额']].apply(get_third) # 理解为有多个表,取出表中的城市和销售额字段记为x,将x应用apply函数
相关推荐
1941s3 分钟前
03-Agent 智能体开发实战指南(三):ReAct 框架深度解析
人工智能·python·langchain
铁蛋AI编程实战5 分钟前
最新版 Kimi K2.5 进阶实战全攻略:从开源部署到 Agent 集群搭建(视频理解 + 多模态开发 + 高并发调优)
人工智能·python·开源·音视频
zh路西法7 分钟前
【宇树机器人强化学习】(三):OnPolicyRunner和VecEnv以及RolloutStorage的python实现与解析
开发语言·python·深度学习·机器学习·机器人
Balrog-v8 分钟前
2026最新保姆级教程:Windows 下使用 uv 从零配置 Python (OpenCV) 环境指南
windows·python·uv
EZ_Python10 分钟前
如何在 Windows 上将 Python 脚本打包为 macOS 原生应用
windows·python·macos
XW010599914 分钟前
5-8能被3,5和7整除的数的个数(用集合实现)
前端·javascript·数据结构·数据库·python·for循环
DeepModel17 分钟前
【概率分布】泊松分布的原理、推导与实战应用
python·算法·概率论
AsDuang25 分钟前
Python 3.12 MagicMethods - 51 - __rlshift__
开发语言·python
带娃的IT创业者25 分钟前
Python 异步编程完全指南(四):高级技巧与性能优化
开发语言·python·性能优化·asyncio·异步编程·技术博客
H_unique32 分钟前
博客接口自动化测试--搭建测试环境&库的介绍&安装allure
python·pytest·测试