题目
根据以下代码,得到的结果为?```import pandas as pdd = ('one': pd.Series([1, 3, 3, 2]), 'two': pd.Series([4, 5, 6, 8]) )df = pd.DataFrame(d)df['three'] = df['one'] + df['two']print(df['three'][2])```A 5B 8C 4D 9
根据以下代码,得到的结果为?
```
import pandas as pd
d = {'one': pd.Series([1, 3, 3, 2]),
'two': pd.Series([4, 5, 6, 8])
}
df = pd.DataFrame(d)
df['three'] = df['one'] + df['two']
print(df['three'][2])
```
A 5
B 8
C 4
D 9
题目解答
答案
根据代码,`df`的结构为:
```
one two
0 1 4
1 3 5
2 3 6
3 2 8
```
列`'three'`为`'one' + 'two'`,结果为:
```
0 5
1 8
2 9
3 10
```
因此,`df['three'][2]`为`9`。
答案:D 9
解析
本题主要考察对pandas库中DataFrame数据结构的操作,包括创建DataFrame、添加新列以及访问特定位置的数据。解题思路如下:
- 首先,使用字典
d创建一个DataFrame对象df,字典中的键为列名,值为Series对象,代表每一列的数据。 - 接着,通过
df['one'] + df['two']计算'one'列和'two'列对应元素相加的结果,并将其赋值给新列'three'。 - 最后,使用
df['three'][2]访问'three'列中索引为 2 的元素。
下面进行详细计算:
- 创建
DataFrame:import pandas as pd d = {'one': pd.Series([1, 3, 3, 2]), 'two': pd.Series([4, 5, 6, 8]) } df = pd.DataFrame(d)此时
df的结构为:one two 0 1 4 1 3 5 2 3 6 3 2 8 - 添加新列
'three':df['three'] = df['one'] + df['two']计算
'one'列和'two'列对应元素相加的结果:
- 当索引为 0 时,$1 + 4 = 5$
- 当索引为 1 时,$3 + 5 = 8$
- 当索引为 2 时,$3 + 6 = 9$
- 当索引为 3 时,$2 + 8 = 10$
此时df的结构变为:one two three 0 1 4 5 1 3 5 8 2 3 6 9 3 2 8 10
- 访问
'three'列中索引为 2 的元素:print(df['three'][2])得到结果为 9。