第3章【思考与练习2】创建并访问Series对象。创建如下表的Series数据对象,其中a-f为索引;增加数据27,索引为g。创建并访问DataFrame对象。创建3×3DataFrame数据对象。

P44思考与练习2

1、创建并访问Series对象。

        1)创建如下表的Series数据对象,其中a-f为索引;

a

b

c

d

e

f

30

25

27

41

25

3

2)增加数据27,索引为g;

3)修改索引d对应的值为40;

4)查询值大于27的数据;

5)删除位置为1-3的数据。

【提示】位置1-3的索引列表,可以用 series.index[1:4] 来得到。

#1、创建并访问Series对象
from pandas import Series

#1)
S = Series([30,25,27,41,25,34],index = ['a','b','c','d','e','f'])
print(S)

#2)
#方法一:
S['g'] = 27
print(S)
#方法二:
'''
A = Series([27],index = ['g'])
S = S.append(A)
print(S)
'''

#3)
S['d'] = 40
print(S)

#4)
print(S[S.values>27])

#5)
print(S.drop(S.index[1:4]))  #或S.drop(['b','c','d'])

2.创建并访问DataFrame对象。

a)创建3×3DataFrame数据对象:数据内容为1-9;行索引为字符a,b,c;列索引为字符串one,two,three;

b)查询列索引为two和three两列数据;

c)查询第0行、第2行、第0列、第2列数据;

d)筛选第1列中值大于2的所有行数据,另存为data1对象;

e)为data1添加一列数据,列索引为four,值都为10;

f)将data1所有值大于9的数据修改为8;

g)删除data1中第0行和第1行数据。

【提示】

(1)生成数据,使用numpy的arange()函数和reshape()函数;

(2)使用 data>9生成布尔型的DataFrame,用于整个DataFrame的数据过滤。

#2创建并访问DataFrame对象
from pandas import DataFrame
import numpy as np
#1)
df = DataFrame(np.arange(1,10).reshape(3,3),index = ['a','b','c'],columns = ['one','two','three'])
print(df)

#2)
print(df[['two','three']])

#3)
print(df.iloc[[0,2],[0,2]])

#4)
data1 = df.loc[df['two']>2]
print(data1)

#5)
data1['four'] = 10
print(data1)

#6)
data1[data1>9] = 8   #或者data1[data1.values>9] = 8
print(data1)

#7)
print(data1.drop(data1.index[0:2],axis = 0))

你可能感兴趣的:(python)