0
点赞
收藏
分享

微信扫一扫

python数据分析基础007 -利用pandas带你玩转excel表格(中上篇)

炽凤亮尧 2022-05-10 阅读 64

文章要点

在这里插入图片描述

🍺前言

🍀(一)在pandas中对excel进行函数填充

🍒1.在excel中进行函数填充

在这里插入图片描述

🍒2.在pandas中实现函数填充

🔥2.1 列于列进行计算

import pandas as pd

book = pd.read_excel('./Book.xlsx')

df = pd.DataFrame(book)

# 1.列与列进行计算
now_price = df['原价'] * df['折扣']
df['现价']=now_price

print(df)

结果:
在这里插入图片描述

🔥2.2 单元格与单元格进行计算

# 2.单元格和单元格进行计算
# # 对索引进行遍历
for i in df.index:
    df['现价'].at[i] = df['原价'].at[i] * df['折扣'].at[i]

结果与上述相同。

🔥2.3 部分数据计算

# 3.对部分单元格进行遍历
for i in range(5,11):
	df['现价'].at[i] = df['原价'].at[i] * df['折扣'].at[i]

结果:
在这里插入图片描述

🔥2.4 列增值

🌟2.4.1 pandas中的apply函数

4.列增值
def add(x):
    return x+5
df['原价'] = df['原价'].apply(add)
df['原价'] = df['原价'].apply(lambda x:x+5)

以上两种方法都可以的到同样的结果:
在这里插入图片描述

🍀(二)排序以及多重排序

🍒1.在excel表格中进行操作

在这里插入图片描述
结果:
在这里插入图片描述

🍒2.在pandas中实现排序操作

import pandas as pd

list = pd.read_excel('./count.xlsx')

df = pd.DataFrame(list)
df.sort_values(by=['Worthy','Price'],inplace=True,ascending=[True,False])

print(df)

结果:
在这里插入图片描述
这样我们就实现了以上结果。

🍀(三)数据筛选

🍒1.在excel中进行数据筛选

🍒2.在pandas中实现数据筛选

import pandas as pd

def age_25(a):
    return a<25
def score_85(b):
    return b>=85 and b <=100

student = pd.read_excel('./Students.xlsx',index_col='ID')
df = pd.DataFrame(student)
fin = df.loc[df['Age'].apply(age_25)].loc[df['Score'].apply(score_85)]
print(fin)
fin = df.loc[df['Age'].apply(lambda x:x<25)].loc[df['Score'].apply(lambda y:y>=85 and y<=100)]

两种方法结果相同:
在这里插入图片描述

🍻结语

举报

相关推荐

0 条评论