Python索引和标签-元素的查看

Python中数据元素的查看选取等
基本概念
元素-对象
下标-元素位置-位置索引-整数
标签索引--名称name和value
在内部:判断是否 if  a in b
                      遍历  for  a in b

list -列表

    基本:int value (index())  
  mylisteg  = ["anna","baby","coff"]
  # 由位置索引-整数索引找值 
  mylisteg[2]
  # 由index 找位置 list.index(value)
  mylisteg.index("anna")
  # 切片-分片 三个参数[start:stop:step]  左闭右开[ )类似于 range(start, stop[, step])
    mylisteg[0:2]
    #分片- slice -- 列表切片是深拷贝

dict -字典

  基本情况: key value  items
  由索引到值 key --  value
 mydicteg = {'Ali': '321', 'Beth': '901', 'Coff': '456'}
 mydicteg['Ali']
 if "Ali" in mydicteg:
    print(mydicteg["Ali"])
else:
    print("not exist")
mydicteg.get("Ali","not-exist")
mydicteg.get("Alim","not-exist")
其他:  
mydicteg.keys()
mydicteg.values()
mydicteg.items()

Numpy中的ndarray

# 和R语言中矩阵或者向量很相似
import numpy as np
mylist = [8, 0, 0.5, 1, 3]
mynarrayeg = np.array(mylist)
 type(mynarrayeg) 
 ## 由位置索引-整数索引找值
 mynarrayeg[0]
 # 由value 找位置np.argwhere
 np.argwhere(mynarrayeg== 8)

Pandas中的DataFrame

Series 
    由一组数据以及与之相关的标签组成
    mylist = [8, 0, 0.5, 1, 3]
    indexname = ["a","b","c","d","e"]
    myserieseg2 = pd.Series(mylist,indexname)
    myserieseg2.index
     # 位置索引-标签索引 --切片包含[]左闭右闭
    myserieseg2[2])
    myserieseg2["c"]
DataFrame索引分为两种,
    行:index=[]
    列   columnas=[]
    一种真实序号索引,0代表第一行,1代表第二行,依此类推;
    另一种是标签索引,行序号或列序号可以用标签,比如说'a','b'等等
    层次化索引 -- 5.1
        index  axis  level   标题  header
        axis = 0     0表示纵轴,方向从上到下--数组的变化是纵向的,体现出行的增加或减少
        axis = 1     1表示横轴,方向从左到右--数组的变化是横向的,而体现出来的是列的增加或者减少
        01.单个标量 
             df.at[label_i,label_j] ==  df.iat[i,j]
        02.选择单行或者多行
            df.loc[val] == df.iloc[where]
        03.选择单列或者多列
            df.loc[:, val] == df.iloc[:, where]   df[val]
        04.选择行和列中的一部分
            df.loc[val1, val2] == df.iloc[where, where]
        细节:使用loc和iloc严格处理基于标签和基于整数的索引
        df[val]     选取单列或者列序列
        df.loc[val]     根据标签选择单行或者多行
        df.loc[:, val]  根据标签选择单列或多列
        df.loc[val1, val2] 选择行和列中的一部分
        df.iloc[where]   根据整数选择单行或者多行
        df.iloc[:, where] 根据整数选择单列或者多列
        df.iloc[where, where] 行和列中的一部分
     pandas.concat(,axis=0) 行
     pandas.concat(,axis=1) 列   axis='columns'      
    outdata.shape[0] #行数  df.index.size()
    outdata.shape[1] #列数  df.columns.size()
 reindex 重建索引
  reindex(columns=)-重建列索引

blogroll

social