dataframe如果month列取值为3,则将PM2.5列所有取值依次放入一个空的array的第一列中,将PM210列所有取值依次放入同一个空的array的第二列中
时间: 2024-11-20 11:55:30 浏览: 5
使用Python向DataFrame中指定位置添加一列或多列的方法
4星 · 用户满意度95%
如果你想把DataFrame中当`month`等于3时,`PM2.5`列和`PM2.10`列的所有值分别放入两个数组中,可以按照以下步骤操作:
首先,找到`month`为3的行,并提取`PM2.5`和`PM2.10`列的值:
```python
mask = df['month'] == 3
df_3 = df[mask]
pm25_values = df_3['PM2.5'].values.tolist()
pm210_values = df_3['PM2.10'].values.tolist()
```
这里我们先创建了一个布尔索引`mask`来选择`month`为3的行,然后利用`.values`将数据转换为列表形式,`tolist()`是为了得到Python的list而非numpy数组。
接着,你会得到两个列表,分别是`pm25_values`(对应于`PM2.5`列)和`pm210_values`(对应于`PM2.10`列)。
为了将这两个列表存储在同一二维数组中,你可以这样做:
```python
result_array = [[value] for value in pm25_values] + [[value] for value in pm210_values]
```
`+`运算符连接了两个列表,每个元素都是一个列表,形成了一个二维数组。
现在,`result_array`应该是一个包含两列的二维数组,第一列是`PM2.5`列的值,第二列是`PM2.10`列的值,它们都来自于`month`为3的行。
阅读全文