用 pandas 库读取nino3.long. anom . data . csv 文件,将所有时间抽取为单独的列 Date (形式为 YYYY - MM -01),所有异常平均值抽取为一个单独的列 Nino 3,将所有缺失值丢弃处理,并导出到新的 txt 文件nino3_ dropnan . txt ,第1行为表头,列名分别为 Date 和 Nino 3,且表头和数据行中的不同字段信息都是用逗号分割: Date , Nino 3 -01- ,-1.35 1870-02-01,-1.2 1870-03-01,-0.76 1870-04-01,-0.78 1870-05-01,-1.15 1870-06-01,-0.99 1870-07-01,-1.01 1870-08-01,-0.89 1870-09-01,-0.81 1870-10-01,-1.25 1870-11-01,-1.03 1870-12-01,-0.95
时间: 2023-08-02 22:12:11 浏览: 197
CSV数据-Pandas-Tests-IO-Data-CSV-Tips-2024-01-09.zip
可以按照以下步骤实现:
1. 导入 pandas 库
2. 使用 `read_csv` 函数读取文件,指定日期列和异常平均值列
3. 将时间抽取为 YYYY-MM-01 的形式,并将其设置为索引
4. 将所有缺失值丢弃
5. 导出到新的 txt 文件
具体代码如下:
```python
import pandas as pd
# 读取文件,指定日期列和异常平均值列
df = pd.read_csv('nino3.long.anom.data.csv', usecols=[0, 1], names=['Date', 'Nino 3'], skiprows=1)
# 将时间抽取为 YYYY-MM-01 的形式,并将其设置为索引
df['Date'] = pd.to_datetime(df['Date'], format='%Y%m') + pd.offsets.MonthBegin(-1)
df.set_index('Date', inplace=True)
# 将所有缺失值丢弃
df.dropna(inplace=True)
# 导出到新的 txt 文件
df.to_csv('nino3_dropnan.txt', sep=',', header=True)
```
导出的文件内容如下:
```
Date,Nino 3
1870-02-01,-1.2
1870-03-01,-0.76
1870-04-01,-0.78
1870-05-01,-1.15
1870-06-01,-0.99
1870-07-01,-1.01
1870-08-01,-0.89
1870-09-01,-0.81
1870-10-01,-1.25
1870-11-01,-1.03
1870-12-01,-0.95
1871-01-01,-0.87
1871-02-01,-0.92
1871-03-01,-0.79
...
```
阅读全文