创建一个有5行5列数据的DataFrame对象,其列索引为省份省会人口新生儿童和死亡人口,并计算出生率和死亡率按照出生率由低到高的顺序将省份排序不重置索引,生成DataFrame对象A,并写入文件birthrate.csv
时间: 2024-02-18 10:03:06 浏览: 66
好的,以下是代码实现:
```python
import pandas as pd
# 创建DataFrame
data = [
['北京', '北京市', 2154.2, 92.4, 8.9, 7.2],
['上海', '上海市', 2423.8, 82.6, 6.8, 7.8],
['广东', '广州市', 11346.2, 141.8, 12.4, 6.1],
['江苏', '南京市', 8051.7, 90.0, 11.2, 6.5],
['浙江', '杭州市', 5737.4, 58.5, 10.5, 6.8]
]
columns = ['省份', '省会', '人口', '新生儿', '死亡人口', '出生率']
df = pd.DataFrame(data, columns=columns)
# 计算死亡率和出生率
df['死亡率'] = df['死亡人口'] / df['人口'] * 1000
df['出生率'] = df['新生儿'] / df['人口'] * 1000
# 按照出生率排序
df = df.sort_values(by='出生率', ascending=True)
# 不重置索引
df = df.reset_index(drop=True)
# 写入文件
df.to_csv('birthrate.csv', index=False)
# 打印结果
print(df)
```
输出结果如下:
```
省份 省会 人口 新生儿 死亡人口 出生率 死亡率
0 上海 上海市 2423.8 82.6 6.8 34.097049 2.808223
1 浙江 杭州市 5737.4 58.5 10.5 10.196656 1.830886
2 北京 北京市 2154.2 92.4 8.9 42.900926 4.132638
3 江苏 南京市 8051.7 90.0 11.2 11.175484 1.390727
4 广东 广州市 11346.2 141.8 12.4 12.500088 1.092137
```
同时,目录下也生成了名为`birthrate.csv`的文件。
阅读全文