pandas 行列对齐
时间: 2023-10-30 18:58:22 浏览: 125
在 pandas 中,行列对齐是指在进行数据操作时,pandas 会根据行和列的标签自动对齐数据。这种对齐操作可以确保在进行运算或者合并数据时,只有具有相同标签的行和列才会参与计算或者合并。
例如,假设我们有两个数据帧 df1 和 df2:
```python
import pandas as pd
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}, index=[0, 1, 2])
df2 = pd.DataFrame({'B': [7, 8, 9], 'C': [10, 11, 12]}, index=[1, 2, 3])
```
df1 的列标签为 ['A', 'B'],行标签为 [0, 1, 2];df2 的列标签为 ['B', 'C'],行标签为 [1, 2, 3]。
当我们对这两个数据帧进行运算时,行和列会自动对齐:
```python
df_sum = df1 + df2
```
这里的加法操作会根据行和列的标签对齐数据,只有具有相同标签的行和列才会相加。对于没有匹配到的标签,会用 NaN 填充。在上面的例子中,df_sum 的结果为:
```
A B C
0 NaN NaN NaN
1 NaN 12.0 NaN
2 NaN 14.0 NaN
3 NaN NaN NaN
```
你可以看到,只有 ['B'] 这个列在 df1 和 df2 中都存在,所以它们相加后的结果保留了 ['B'] 这一列,其他列则被填充为 NaN。
这就是 pandas 中行列对齐的概念和用法。它使得数据处理更方便,特别是在合并和运算时可以更准确地匹配到相对应的数据。
阅读全文