python 将dataframe中的str都转化成float_太香了!强烈安利14个Python奇技淫巧

点击上方“Python学习与数据挖掘”,关注公众号

设为“ 星标”,好文章不错过!
 资料整理|文末附加群方式 在工作中我们经常利用Python处理数据,在处理数据过程中经常需要处理分组中最大值的位置、字符串分割、列合并等操作。有些操作偶尔不用也容易遗忘,重复操作非常费时费力。今天我就把工作中常用到的Python使用技巧归纳一下,将这些技巧整理成文档,以后就可以拿来即用,方便更高效地实现数据分析。如果喜欢,欢迎收藏和分享。

1.行序、列序反转

行序反转最直接的办法是使用loc函数并传递::-1,跟Python中列表反转时使用的切片符号一致
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(4,8))
df.loc[::-1].reset_index(drop=True)
列序反转就比较容易了,只需要如下操作
df.loc[:, ::-1]

2.分组里最大值所在的行方法

分为分组中有重复值和无重复值两种。无重复值的情况。
df = pd.DataFrame({'Sp':['a','b','c','d','e','f'], 'Mt':['s1', 's1', 's2','s2','s2','s3'], 'Value':[1,2,3,4,5,6], 'Count':[3,2,5,10,10,6]})
df
df.iloc[df.groupby(['Mt']).apply(lambda x: x['Count'].idxmax())]
先按Mt列进行分组,然后对分组之后的数据框使用idxmax函数取出Count最大值所在的列,再用iloc位置索引将行取出。有重复值的情况
df["rank"] = df.groupby("ID")["score"].rank(method="min", ascending=False).astype(np.int64)
df[df["rank"] == 1][["ID", "class"]]
对ID进行分组之后再对分数应用rank函数,分数相同的情况会赋予相同的排名,然后取出排名为1的数据。

3.计算变量缺失率

df=pd.read_csv('titanic_train.csv')
def missing_cal(df):
  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值