zoukankan      html  css  js  c++  java
  • pandas操作行集锦

    pandas移花接木

    数据准备两表:

    gaigai

    我们接下来要进行的操作:

    • 将两表进行合并
    # 把两张表合并,但是这样有问题,索引会重复的进行0-19
    students = page_001.append(page_002)
    students
    
    # 我们需要做一步操作,将索引全部重新排列,reset_index同时还要将原索引删除drop=True,这样就OK
    students.reset_index(drop=True)
    

    gai gai

    • 追加一行数据到最后
    # 这里必须开启ignore_index告诉pandas直接给我加,不要管索引,否则会报错
    append_last = pd.Series({'ID':40, 'Name':'New_friend', 'Score': 90})
    # 修改了数据后记住重新把对象引用给students,否则只是修改了副本
    students= students.append(append_last,ignore_index=True)
    

    图太长,放结果那几行

    gai

    • 追加一行数据到中间的位置,例如索引为20的前面
    这里可以先把数据拆分为两部分,一部分为前20,一部分为后面的
    part1 = students[:20]
    part2 = students[20:]
    part1 = part1.append(pd.Series({'ID':100, 'Name': 'HHHHHH', 'Score':1111}),ignore_index=True)
    OK合并成功
    part1.append(part2,ignore_index=True)
    

    gai

    修改数据有两种做法,原理不同结果相同-条条大路通罗马

    • 1.修改其中的一行数据,把38行的Student_39改了
    直接修改源数据
    students.at[38, 'Name'] = 'HI'
    students
    

    gai

    • 2.DataFrame降维度后得Series对象,我们可以生成Series对象,直接替换掉旧的
    # 生成新数据行
    new_data = pd.Series({'ID':39 , 'Name': 'HELLO', 'Score': 100})
    # 筛选出要替换的行,用iloc或者loc都行,这里我用iloc
    students.iloc[39] = new_data
    students
    

    gai

    drop函数接收一个可迭代对象

    删除指定索引的行
    students.drop(index=[0,1,2],inplace=True)
    students
    

    gai

    删除某个范围内的行数据
    students.drop(index=range(10,15),inplace=True)
    students
    

    gai

    将某个区间的Name修改为空值,筛选出这部分数据,并进行删除

    for i in range(20, 25):
        students.at[i, 'Name'] = ''
    students
    

    gai

    drop接收一个可迭代对象,那么我们就要先找出空值的数据
    missing = students.loc[students['Name'] == '']
    然后将空数据行的索引传给drop
    students.drop(index=missing.index,inplace=True)
    students
    

    gai

    以上就是关于pandas操作行的集锦

  • 相关阅读:
    05day02wdt
    05day02pwm
    05day01ioctl_led
    04clock_06semqphore
    04lock_05seqlock
    04lock_03rwlock
    [git]入门-工作区、暂存区、版本库
    [git]入门-创建版本库
    [linux-脚本]shebang(shabang #!)
    [ffmpeg]安装
  • 原文地址:https://www.cnblogs.com/lishi-jie/p/10155598.html
Copyright © 2011-2022 走看看