首页 技术 正文
技术 2022年11月22日
0 收藏 998 点赞 2,499 浏览 1392 个字

pandas中Dataframe的一些用法

pandas读取excel文件

  • pd.read_excel 前提是安装xlrd库

dataframe,numpy,list之间的互相转换

  • dataframe转numpy :dataframe对象.values
  • dataframe转list:dataframe对象.values.tolist()
  • list转numpy:np.array(list对象)
  • list转dataframe:pd.DataFrame(list对象)
  • numpy转list:numpy对象.tolist()
  • numpy转dataframe:pd.DataFrame(numpy对象)

dataframe 按行遍历,按列遍历

  • 按行遍历:

    常用df.iterrows()

    import pandas as pd
    demo_list = [[1,2],
    [3,4]]
    #用list构建dataframe
    demo_df = pd.DataFrame(demo_list)
    print(demo_df)

#接上
for row in demo_df.iterrows():
print(type(row))
print(row[0])
print(row[1])

可以看到每个row的类型是tuple元组类型,元组长度为2,元组第0个元素为index,第1个元素为横向的series。**值得注意的是,在遍历过程中如果取每一行的某个值,通过对row[1]进行切片即可。 **

  • 按列遍历

    经常使用df.columns获取列名然后访问

    #接上
    print(demo_df.columns)
    for column in demo_df.columns:
    print(demo_df[column])

dataframe之使用iloc切片

  • 先构建dataframe
import numpy as np
import pandas as pd
##list构建5x5的dataframe,由于dataframe没有reshape,因此需要借助numpy
demo_list = [i for i in range(25)]
demo_np = np.array(demo_list).reshape(5,5)
demo_df = pd.DataFrame(demo_list)
print(demo_df)

  • iloc[start:end ,start :end ]表示按行列取出dataframe的值。其中逗号前面表示行,逗号后面表示列。冒号左侧表示开始,冒号右侧表示结束(遵循左闭右开原则)。例如,demo_df.iloc[2:4,1:3]表示切片第二行到第三行 第一列到第二列数据。 切片返回的数据类型还是dataframe。

  • iloc[start: end :step,start:end :step]是在上一个切片的基础上加上了步长。表示从start到end每step步取一次值。

dataframe 中缺失值的处理

  • 均值填充

    通常使用fillna()

    ##获取存在缺失值的列名列表
    null_columns=list(file_df.columns[file_df.isnull().sum() > 0])
    for column in null_columns :
    #计算每一列的均值
    mean_val = file_df[column].mean()
    #使用fillna进行均值填充
    file_df[column].fillna(mean_val, inplace=True)
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,947
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,473
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,286
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,102
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,734
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,769