Pandas图解

下面将借助可视化的过程,讲解Pandas的各种操作。

sort_values

(dogs[dogs['size'] == 'medium']
 .sort_values('type')
 .groupby('type').median()
)

执行步骤:

  • size列筛选出部分行

  • 然后将行的类型进行转换

  • 按照type列进行分组,计算中位数

selecting a column

dogs['longevity']

groupby + mean

dogs.groupby('size').mean()

执行步骤:

  • 将数据按照size进行分组

  • 在分组内进行聚合操作

grouping multiple columns

dogs.groupby(['type', 'size'])

groupby + multi aggregation

(dogs
  .sort_values('size')
  .groupby('size')['height']
  .agg(['sum', 'mean', 'std'])
)

执行步骤

  • 按照size列对数据进行排序

  • 按照size进行分组

  • 对分组内的height进行计算

filtering for columns

df.loc[:, df.loc['two'] <= 20]

filtering for rows

dogs.loc[(dogs['size'] == 'medium') & (dogs['longevity'] > 12), 'breed']

dropping columns

dogs.drop(columns=['type'])

joining

ppl.join(dogs)

merging

ppl.merge(dogs, left_on='likes', right_on='breed', how='left')

pivot table

dogs.pivot_table(index='size', columns='kids', values='price')

melting

dogs.melt()

pivoting

dogs.pivot(index='size', columns='kids')

stacking column index

dogs.stack()

unstacking row index

dogs.unstack()

resetting index

dogs.reset_index()

setting index

dogs.set_index('breed')

Pandas中,shift()函数用于将DataFrame中的数据沿指定轴向上下或左右移动。它的参数包括periods、freq、axis和fill_value。 periods参数表示要移动的步数,可以是正数(向下或向右移动)或负数(向上或向左移动)。\[1\] freq参数用于指定时间间隔,如果不指定,默认为None。\[1\] axis参数用于指定移动的方向,可以是0或'index'(上下移动)或1或'columns'(左右移动)。\[2\] fill_value参数用于指定在移动过程中空缺位置的填充值,默认为NaN。\[1\] 例如,如果我们有一个DataFrame df,想要将其中的数据向下移动一行,可以使用df.shift(1)。同样地,如果想要将数据向右移动一列,可以使用df.shift(1, axis=1)。\[1\] 在筛选出复购用户的情况下,可以使用shift()函数来移动复购用户的数据。首先,根据每位用户的购买时间来升序排列DataFrame,然后根据每位复购用户的数据移动一个单位。具体的代码如下: df3 = df2.sort_values(\["姓名","时间"\], ascending=\[True,True\]).reset_index(drop=True) df3_shifted = df3.groupby("姓名").shift(1) 这样,df3_shifted中的数据就是每位复购用户的数据向上移动了一个单位。\[3\] #### 引用[.reference_title] - *1* *3* [【Python】电商用户复购数据实战:图解Pandas的移动函数shift](https://blog.csdn.net/fengdu78/article/details/119988534)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [pandas常用函数之shift](https://blog.csdn.net/weixin_30760895/article/details/95394034)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值