python pandas 读取 0开头的字符串 随机抽取数据

目录

pandas 读取csv 0开头的字符串

pandas 随机抽取1000行数据:

pandas获取数据尺寸信息:

获取数据总量和维度信息:

获取行数:

pandas 遍历速度比较

筛选数据再遍历速度比较:


pandas 读取csv 0开头的字符串

0开头的数字字符串,比如012355,会读成12355。

因此需要走下数据转换 converters={'code': str}可以对数据进行转换

code_data = pd.read_csv(file, encoding='utf8', converters={'code': str})

code是列名,需要换成你的文件列名,读取时会对那一列进行处理。 

pandas 随机抽取1000行数据:

data = data.sample(n=1000,random_state=1)  #随机抽取1000行

pandas获取数据尺寸信息:

获取数据总量和维度信息:

print(df_label.size,df_label.shape)

如果df_label是3行5列,那么:

结果是15  (3, 5)

获取行数:

print(df_label.__len__())
print(df_label.shape[0])

pandas 遍历速度比较

    aa=1
    start=time.time()
    for row_index,data in enumerate(df_label.itertuples()):
        aa+=1

    print("aa time",aa,time.time()-start)
    aa = 1
    for row_index, data in enumerate(df_label.iterrows()):
        aa += 1
    print("bb time",aa, time.time() - start)
    aa = 1
    for row_index, data in df_label.iterrows():
        aa += 1
    print("cc time",aa, time.time() - start)

结果:

aa time 79039 0.43267178535461426
bb time 79039 6.147785902023315
cc time 79039 11.870731353759766

筛选数据再遍历速度比较:

    aa=1
    start=time.time()

    df_datas = df_label[df_label['group_id'] == 5]

    for row_index,data in enumerate(df_datas.itertuples()):
        aa+=1

    print("aa time",aa,time.time()-start)
    aa = 1
    for row_index, data in enumerate(df_datas.iterrows()):
        aa += 1
    print("bb time",aa, time.time() - start)
    aa = 1
    for row_index, data in df_datas.iterrows():
        aa += 1
    print("cc time",aa, time.time() - start)

结果:

aa time 6555 0.03705906867980957
bb time 6555 0.5034129619598389
cc time 6555 0.9736764430999756

总结:

itertuples速度最快,是iterrows速度的20-30倍。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

AI算法网奇

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

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

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

打赏作者

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

抵扣说明:

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

余额充值