zoukankan      html  css  js  c++  java
  • pandas指定列索引和行索引

    1、使用 set_index() 在 Pandas DataFrame 中指定列作为索引
    2、使用 read_excel 或 read_csv 中的 index_col 参数在 Pandas DataFrame 中将列作为索引

    通常,在 Pandas Dataframe 中,我们默认以 0 到对象长度的序列号作为索引。我们也可以将 DataFrame 中的某一列作为其索引。为此,我们可以使用 pandas 中提供的 set_index(),也可以在从 excel 或 CSV 文件中导入 DataFrame 时指定列作为索引。

    set_index() 可以应用于列表、序列或 DataFrame 来改变它们的索引。对于 DataFrame,set_index() 也可以将多个列作为它们的索引。

    import pandas as pd
    import numpy as np
    
    colnames = ['Name','Time','Course']
    df = pd.DataFrame([['Jay',10,'B.Tech'],
                       ['Raj',12,'BBA'],
                       ['Jack',11,'B.Sc']], columns = colnames)
    
    print(df)

    使用 set_index() 将一列作为索引。

    import pandas as pd
    import numpy as np
    
    colnames = ['Name','Time','Course']
    df = pd.DataFrame([['Jay',10,'B.Tech'],
                       ['Raj',12,'BBA'],
                       ['Jack',11,'B.Sc']], columns = colnames)
    
    df.set_index('Name', inplace = True)
    
    print(df)

    使多列作为索引:

    import pandas as pd
    import numpy as np
    
    colnames = ['Name','Time','Course']
    df = pd.DataFrame([['Jay',10,'B.Tech'],
                       ['Raj',12,'BBA'],
                       ['Jack',11,'B.Sc']], columns = colnames)
    
    df.set_index(['Name','Course'], inplace = True)
    
    print(df)

    当从 excel 或 CSV 文件中读取 DataFrame 时,我们可以指定我们想要的列作为 DataFrame 的索引。

    import pandas as pd
    import numpy as np
    df = pd.read_excel("data.xlsx",index_col = 2)
    print(df)

    ------------------------------------------------------------------------------------------------------

    将指定行作为columns:

    #set 第0行作为column名。axis=1,列变换
    #有时候inplace=True的时候遇到了问题,这里inplace= False保留了第0行,然后drop掉第0行,比较安全。

    pd1=pd.set_axis(pd.iloc[0],axis=1,inplace= False)  
    pd1=pd1.drop(index=0) 

    #set “names列作为index名。这里直接drop了第0行,目前没有遇到过问题。

    pd=pd.set_index('names',drop=True)

    #小结:set_index 行名 set_axis 列名和行名
    *# 这里set_index的参数可以用’names’,相对更简单。set_axis 对参数的要求稍微繁琐一些。

    参考文章:

    https://www.delftstack.com/zh/howto/python-pandas/set-column-as-index-pandas/#%25E4%25BD%25BF%25E7%2594%25A8-read_excel-%25E6%2588%2596-read_csv-%25E4%25B8%25AD%25E7%259A%2584-index_col-%25E5%258F%2582%25E6%2595%25B0%25E5%259C%25A8-pandas-dataframe-%25E4%25B8%25AD%25E5%25B0%2586%25E5%2588%2597%25E4%25BD%259C%25E4%25B8%25BA%25E7%25B4%25A2%25E5%25BC%2595

    https://blog.csdn.net/lc19837862/article/details/108945519

  • 相关阅读:
    第二十六篇 -- wifi学习
    第三篇 -- HTML基础
    第二十九篇 -- 学习第五十六天打卡20190826
    第二篇 -- 软件测试基础
    第一篇 -- 计算机基础
    第二十五篇 -- C++宝典中的图书管理系统
    第五篇 -- 记下曾经的好词好句
    linux平台下Tomcat的安装与优化、windows安装tomcat8.5
    转载:让Windows Server 2012r2 IIS8 ASP.NET 支持10万并发请求
    转载:IIS 之 连接数、并发连接数、最大并发工作线程数、队列长度、最大工作进程数
  • 原文地址:https://www.cnblogs.com/soymilk2019/p/15793508.html
Copyright © 2011-2022 走看看