Pandas(第十二集:DataFrame运算)

文章介绍了在Python的Pandas库中,当DataFrame的索引与列相互对应或不对应时如何进行数据运算,包括DataFrame与标量、其他DataFrame以及Series的运算。在对应情况下,可以直接进行加法运算;不对应时,可以使用特定方法处理缺失值,如用0填充。此外,展示了DataFrame与Series按行或列进行运算的不同方式。
摘要由CSDN通过智能技术生成


1. 源数据

df = pd.DataFrame(
    data=np.random.randint(10, 100, size=(3, 3)),
    index=['张三', '李四', '王五'],
    columns=['数学', '语文', '英语'],
)
df2 = pd.DataFrame(
    data=np.random.randint(10, 100, size=(3, 3)),
    index=['张三', '李四', '王五'],
    columns=['数学', '语文', '英语'],
)
df3 = pd.DataFrame(
    data=np.random.randint(10, 100, size=(4, 4)),
    index=['张三', '李四', '王五', '赵六'],
    columns=['数学', '语文', '英语', '化学'],
)

在这里插入图片描述

2.索引与列一一对应的情况下

2.1 DataFrame和标量之间的运算

df + 100

在这里插入图片描述

2.2 DataFrame之间的运算

df + df2

在这里插入图片描述

3. 索引与列不对应的情况下

3.1 DataFrame之间的运算

df + df3

在这里插入图片描述

3.2 DataFrame之间的运算,为NaN的使用0填充

df.add(df3, fill_value=0)

在这里插入图片描述

4. DataFrame与Series之间的运算

4.1 源数据

s1 = pd.Series([100, 10, 1], index=df.columns)
s2 = pd.Series([100, 10, 1], index=df.index)
df

在这里插入图片描述

4.2 DataFrame+Series对行进行操作 axis=0 Series.index与DataFrame.index对应

df.add(s2, axis=0)

在这里插入图片描述

4.3 DataFrame+Series对行进列操作 axis=1 Series.index与DataFrame.columns对应

df.add(s1, axis=1)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Monly21

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值