6-对象操作--数据分析

Series对象的增删改查

In [1]:
import pandas as pd
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

通过boolean类型来显示符合条件的数据

  • 查询数据
In [3]:
mask = [True,False,True]
s[mask]
Out[3]:
a    10
c    12
dtype: int64
In [4]:
 
          
s['b']
Out[4]:
11
In [5]:
 
          
s.loc['b']
Out[5]:
11
In [6]:
 
          
s.iloc[1]
Out[6]:
11

修改Series的数据

In [7]:
 
          
s1 = s.copy()
s1['a']=101
s1
Out[7]:
a    101
b     11
c     12
dtype: int64

replace():修改数据方法。to_replace:将要修改的数据 value:修改的新值 inplace:是否替换原有数据

In [12]:
 
          
s1.replace(to_replace=101,value=102,inplace=False)
Out[12]:
a    102
b     11
c     12
dtype: int64

修改索引

In [15]:
s1.index
Out[15]:
Index(['a', 'b', 'c'], dtype='object')
In [18]:
s1.index=['c','b','a']
s1
Out[18]:
c    102
b     11
a     12
dtype: int64
In [24]:
s1.rename(index={'a':'A'},inplace=True)
s1
Out[24]:
c    102
b     11
A     12
dtype: int64

增加数据

In [27]:
s2 = pd.Series([100,500],index=['f','g'])
s2
Out[27]:
f    100
g    500
dtype: int64

append()方法添加元素

In [28]:
s1.append(s2)
Out[28]:
c    102
b     11
A     12
f    100
g    500
dtype: int64
In [31]:
s3 = s1.append(s2)
s3['v']=50
s3
Out[31]:
c    102
b     11
A     12
v     50
f    100
g    500
dtype: int64

ignore_index: 是否生保留原来的索引 False:保留原来索引 True:生成新的索引

In [32]:
 
          
s1.append(s2,ignore_index=True)
Out[32]:
0    102
1     11
2     12
3     50
4    100
5    500
dtype: int64

删除操作

In [36]:
s1
Out[36]:
c    102
b     11
v     50
dtype: int64
In [38]:
del s1['v']
s1
Out[38]:
c    102
b     11
dtype: int64
In [40]:
s1.drop(['c','b'],inplace=True)
s1
Out[40]:
Series([], dtype: int64)

DataFrame对象的增删改查

In [42]:
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[42]:
 ABC
a123
b456

查询数据

In [43]:
 
          
df['A']
Out[43]:
a    1
b    4
Name: A, dtype: int64
In [44]:
 
          
df.iloc[0]
Out[44]:
A    1
B    2
C    3
Name: a, dtype: int64
In [45]:
 
          
df.loc['a']
Out[45]:
A    1
B    2
C    3
Name: a, dtype: int64

修改数据

In [46]:
 
          
df.loc['a']['A']=150
df
Out[46]:
 ABC
a15023
b456
In [47]:
 
          
df.index=['f','g']
df
Out[47]:
 ABC
f15023
g456

增加数据

In [48]:
 
          
df.loc['c']=[1,2,3]
df
Out[48]:
 ABC
f15023
g456
c123
In [49]:
data = [[1,2,3],[4,5,6]]
index=['p','l']
columns=['A','B','C']
df2 = pd.DataFrame(data=data,index=index,columns=columns)
df2
Out[49]:
 ABC
p123
l456
In [50]:
 
          
### concat() 将两个DataFrame数据连接为一个新的数据
In [52]:
df3 = pd.concat([df,df2])
df3
Out[52]:
 ABC
f15023
g456
c123
p123
l456

增加一个列

In [53]:
 
          
df2['Tage']=[10,11]
df2
Out[53]:
 ABCTage
p12310
l45611
In [58]:
df4 = pd.DataFrame([[10,11],[12,13]],index=['p','l'],columns=['D','E'])
df4
Out[58]:
 DE
p1011
l1213
In [59]:
df5 = pd.concat([df2,df4],axis=1)
df5
Out[59]:
 ABCTageDE
p123101011
l456111213

删除操作

  • 按行删除
In [61]:
df5.drop(['p'],axis=0,inplace=True)
df5
Out[61]:
 ABCTageDE
l456111213
  • 按列删除
In [63]:
del df5['Tage']
df5
Out[63]:
 ABCDE
l4561213
In [65]:
df5.drop(['A','B','C'],axis=1,inplace=True)
df5
Out[65]:
 DE
l1213
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值