zoukankan      html  css  js  c++  java
  • 3-5-对象操作

     

    对象的增删改查

    In [1]:
    import pandas as pd 
    
     

    series结构的增删改查

    In [2]:
    data =[10,11,12]
    index=['a','b','c']
    s=pd.Series(data=data,index=index)
    s
    
    Out[2]:
    a    10
    b    11
    c    12
    dtype: int64
     
    • 查操作
    In [3]:
    s[0]
    
    Out[3]:
    10
    In [4]:
    s[0:2]
    
    Out[4]:
    a    10
    b    11
    dtype: int64
    In [5]:
    mask=[True,False,True]
    s[mask]
    
    Out[5]:
    a    10
    c    12
    dtype: int64
    In [6]:
    s.loc['b']
    
    Out[6]:
    11
    In [7]:
    s.iloc[1]
    
    Out[7]:
    11
     
    • 改操作
    In [8]:
    s1=s.copy()
    s1['a']=100
    s1
    
    Out[8]:
    a    100
    b     11
    c     12
    dtype: int64
    In [9]:
    s1.replace(to_replace=100,value=101,inplace=True)#inplace=True时s1原来的值会变,反之为False则不会变
    
    In [10]:
    s1
    
    Out[10]:
    a    101
    b     11
    c     12
    dtype: int64
    In [11]:
    s1.index
    
    Out[11]:
    Index(['a', 'b', 'c'], dtype='object')
    In [12]:
    s1.index=['a','b','d']#修改index的值
    s1
    
    Out[12]:
    a    101
    b     11
    d     12
    dtype: int64
    In [13]:
    s1.rename(index={'a':'A'},inplace=True)#inplace=True可以改变原来s1的index值 
    s1
    
    Out[13]:
    A    101
    b     11
    d     12
    dtype: int64
     
    • 增操作
    In [14]:
    data=[11,110]
    index=['h','k']
    s2=pd.Series(data=data,index=index)
    s2
    
    Out[14]:
    h     11
    k    110
    dtype: int64
    In [16]:
    s3=s1.append(s2)#增加一整个Series
    
    In [17]:
    s3['j']=500#单独增加一个
    s3
    
    Out[17]:
    A    101
    b     11
    d     12
    h     11
    k    110
    j    500
    dtype: int64
    In [18]:
    s1.append(s2,ignore_index=False)#ignore_index=False:不对序列进行重新排序,保留原来的排序
    
    Out[18]:
    A    101
    b     11
    d     12
    h     11
    k    110
    dtype: int64
    In [19]:
    s1.append(s2,ignore_index=True)#ignore_index=True:对原来的序列进行重新排序
    
    Out[19]:
    0    101
    1     11
    2     12
    3     11
    4    110
    dtype: int64
     
    • 删操作
    In [25]:
    s3
    
    Out[25]:
    A    101
    b     11
    d     12
    h     11
    k    110
    j    500
    dtype: int64
    In [26]:
    del s3['A']#指定删除1行
    s3
    
    Out[26]:
    b     11
    d     12
    h     11
    k    110
    j    500
    dtype: int64
    In [27]:
    s3.drop(['b','d'],inplace=True)#多行删除
    s3
    
    Out[27]:
    h     11
    k    110
    j    500
    dtype: int64
     

    DataFrame结构的增删改查

    In [28]:
    data=[[1,2,3],[4,5,6]]
    index=['a','b']
    columns=['A','B','C']
    
    df=pd.DataFrame(data=data,index=index,columns=columns)
    df
    
    Out[28]:
     
     ABC
    a 1 2 3
    b 4 5 6
     
    • 查操作
    In [29]:
    df['A']
    
    Out[29]:
    a    1
    b    4
    Name: A, dtype: int64
    In [30]:
    df.loc['a']
    
    Out[30]:
    A    1
    B    2
    C    3
    Name: a, dtype: int64
    In [31]:
    df.iloc[1]
    
    Out[31]:
    A    4
    B    5
    C    6
    Name: b, dtype: int64
     
    • 改操作
    In [32]:
    df.loc['a']['A']
    
    Out[32]:
    1
    In [33]:
    df.loc['a']['A']=150#直接在原数据上修改值
    df
    
    Out[33]:
     
     ABC
    a 150 2 3
    b 4 5 6
    In [34]:
    df.index=['f','g']#改索引
    df
    
    Out[34]:
     
     ABC
    f 150 2 3
    g 4 5 6
    In [35]:
    df.rename(index={'f':'F'},inplace=True)#改索引
    df
    
    Out[35]:
     
     ABC
    F 150 2 3
    g 4 5 6
     
    • 增操作
    In [37]:
    df.loc['c']=[1,2,3]#增加1行
    df
    
    Out[37]:
     
     ABC
    F 150 2 3
    g 4 5 6
    c 1 2 3
    In [42]:
    data=[[1,2,3],[4,5,6]]
    index=['j','k']
    columns=['A','B','C']
    
    df2=pd.DataFrame(data=data,index=index,columns=columns)
    df2
    
    Out[42]:
     
     ABC
    j 1 2 3
    k 4 5 6
    In [47]:
    df3=pd.concat([df,df2],axis=0)#把两个DataFrame连接
    df3
    
    Out[47]:
     
     ABC
    F 150 2 3
    g 4 5 6
    c 1 2 3
    j 1 2 3
    k 4 5 6
    In [48]:
    df2['Tang']=[10,11]#增加一列
    df2
    
    Out[48]:
     
     ABCTang
    j 1 2 3 10
    k 4 5 6 11
    In [50]:
    df4=pd.DataFrame([[10,11],[12,13]],index=['j','k'],columns=['D','E'])
    df4
    
    Out[50]:
     
     DE
    j 10 11
    k 12 13
    In [54]:
    df5=pd.concat([df2,df4],axis=1)
    df5
    
    Out[54]:
     
     ABCTangDE
    j 1 2 3 10 10 11
    k 4 5 6 11 12 13
     
    • 删操作
    In [56]:
    df5.drop(['j'],axis=0,inplace=True)
    df5
    
    Out[56]:
     
     ABCTangDE
    k 4 5 6 11 12 13
    In [60]:
    del df5['Tang']#删1列
    df5
    
    Out[60]:
     
     ABCDE
    k 4 5 6 12 13
    In [63]:
    df5.drop(['A','B','C'],axis=1,inplace=True)
    df5
    
    Out[63]:
     
     DE
    k 12 13
  • 相关阅读:
    python----面对对象三大特征2
    python---面对对象的三大特征
    python---面对对象的组合
    python----特殊闭包
    python----面向对象初识
    Nginx配置upstream实现负载均衡
    Nginx的配置与部署研究,Upstream负载均衡模块
    百度地图传经纬度位置显示
    ip转城市接口,ip转省份接口,ip转城市PHP方法
    PHP把采集抓取网页的html中的的 去掉或者分割成数组
  • 原文地址:https://www.cnblogs.com/AI-robort/p/11636759.html
Copyright © 2011-2022 走看看