zoukankan      html  css  js  c++  java
  • python数据分析001_series和dataframe

    1.Series

    from pandas import Series
    emp=['001','002','003','004','005','006']
    name=['亚瑟', '后裔','小乔','哪吒' ,'虞姬','王昭君']
    series = Series(data=name,index=emp)
    # 获取单个数据
    print(series[0])
    # 获取多个不连续的数据
    print('位置下标',series[[1,3]])
    # 使用切片获取连续的数据
    print('位置切片',series[0:3])

    2.Dataframe

    import pandas as pd

    df_dict = {
    'name':['ZhangSan','LiSi','WangWu','ZhaoLiu'],
    'age':['18','20','19','22'],
    'weight':['50','55','60','80']
    }
    df = pd.DataFrame(data=df_dict,index=['001','002','003','004'])
    print(df)
    # 获取行数和列数
    print(df.shape)

    # 获取行索引
    print(df.index.tolist())

    # 获取列索引
    print(df.columns.tolist())

    # 获取数据的维度
    print(df.ndim)

    # 获取前两条

    df.head(2)
    # 获取后两条
    df.tail(2)

    # 通过位置索引切片获取一行
    print(df[0:1])
    # 通过位置索引切片获取多行
    print(df[1:3])
    # 获取多行里面的某几列
    print(df[1:3][['name','age']])
    # 获取DataFrame的列
    print(df['name'])
    # 如果获取多个列
    print(df[['name','age']])

     

    通过行标签索引筛选loc[],通过行位置索引筛选iloc[],loc['001':'003']的结果中包含行索引003对应的行。iloc[0:2] 结果中不包含序号为2的数据,切片终点对应的数据不在筛选结果中

    # 获取某一行某一列的数据
    print(df.loc['001','name'])
    # 某一行多列的数据
    print(df.loc['001',['name','weight']])
    # 一行所有列
    print(df.loc['001',:])
    # 选择间隔的多行多列
    print(df.loc[['001','003'],['name','weight']])
    # 选择连续的多行和间隔的多列
    print(df.loc['001':'003','name':'weight'])

    # 取一行

    print(df.iloc[1])
    # 取连续多行
    print(df.iloc[0:2])
    # 取间断的多行
    print(df.iloc[[0,2],:])
    # 取某一列
    print(df.iloc[:,1])
    # 某一个值
    print(df.iloc[1,0])

    3.遍历

    按value遍历:

    for value in df['薪资']:
    print(value)

    iterrows(): 按行遍历,将DataFrame的每一行转化为(index, Series)对。index为行索引值,Series为该行对应的数据。

    for index,row_data in df.iterrows():

    print(index,row_data)

    iteritems():按列遍历,将DataFrame的每一列转化为(column, Series)对。column为列索引的值,Series为该列对应的数据。

    for col,col_data in df.iteritems()

      print(col,col_data)

     
     4.总结
     
     
     
     
  • 相关阅读:
    Java I/O基础
    Python基础篇(九)
    Python基础篇(八)
    thinkphp5中Indirect modification of overloaded element of XXX has no effect的解决办法
    关于json_encode转义斜杠的问题
    [thinkexceptionErrorException] glob() has been disabled for security reasons
    CentOS7 安装svn
    -bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory
    php在线编辑本地文件方法共享
    python一些不错的东西
  • 原文地址:https://www.cnblogs.com/fanshudada/p/12332206.html
Copyright © 2011-2022 走看看