美文网首页
Python-科学计算-pandas-11-df获取特定行或者列

Python-科学计算-pandas-11-df获取特定行或者列

作者: Data_Python_VBA | 来源:发表于2020-06-13 08:28 被阅读0次

    微信公众号原文

    系统:Windows 7
    语言版本:Anaconda3-4.3.0.1-Windows-x86_64
    编辑器:pycharm-community-2016.3.2
    pandas:0.19.2

    • 这个系列讲讲Python的科学计算及可视化
    • 今天讲讲pandas模块
    • 从Dataframe获取特定的行或者列数据,生成一个列表

    Part 1:目标

    1. 已知一个Df,如下图
      • 包括3列["time", "pos", "value1"]
      • 包括8行[0,1,2,3,4,5,6,7]
    2. 目标:
      • 获取["time", "pos", "value1"]任意一列数据,输出为列表
      • 获取第0行数据

    Df

    1.png

    Part 2:代码

    import pandas as pd
    
    dict_1 = {"time": ["2019-11-02", "2019-11-03", "2019-11-04", "2019-11-05",
                       "2019-12-02", "2019-12-03", "2019-12-04", "2019-12-05"],
              "pos": ["P1", "P2", "P3", "P4", "P5", "P6", "P7", "P8"],
              "value1": [0.5, 0.8, 1.0, 2, 3, 5, 6, 7]}
    
    df_1 = pd.DataFrame(dict_1, columns=["time", "pos", "value1"])
    print(df_1, "\n")
    
    print("\n获取列信息")
    print("\n方法1")
    list1 = df_1["time"].values.tolist()
    list2 = df_1["pos"].values.tolist()
    list3 = df_1["value1"].values.tolist()
    print("time-列:", list1)
    print("time-列,数据类型:", type(list1))
    print("pos-列:", list2)
    print("value1-列:", list3)
    
    print("\n方法2")
    list4 = df_1["time"].tolist()
    print("time-列:", list4)
    print("time-列,数据类型:", type(list4))
    
    print("\n获取行信息")
    df_2 = df_1.T
    print(df_2)
    list5 = df_2[0].tolist()
    print(list5)
    print(type(list5))
    
    

    代码截图

    2.png

    运行结果

    3.png

    Part 3:部分代码解读

    1. 输出列,包括两种方法,从结果上来看没有什么区别,具体有啥区别,欢迎留言来分享
      • df_1["time"].values.tolist(),格式:df[列名].values.tolist()
      • df_1["time"].tolist(),格式:df[列名].tolist()
    2. 输出行,本文中其实还是采用输出列的方式,即先将原来的df_1转置再输出列信息,df_2 = df_1.T

    本文为原创作品,欢迎分享朋友圈

    长按图片识别二维码,关注本公众号
    Python 优雅 帅气


    12x0.8.jpg

    相关文章

      网友评论

          本文标题:Python-科学计算-pandas-11-df获取特定行或者列

          本文链接:https://www.haomeiwen.com/subject/wdxatktx.html