python pandas 如果A1 等于1 B1就等于2
时间: 2023-06-16 12:05:05 浏览: 61
你可以使用 `loc` 方法选择所有 A1 等于 1 的行,并将这些行的 B1 列设置为 2。示例如下:
```python
import pandas as pd
# 创建一个简单的 DataFrame
df = pd.DataFrame({'A1': [1, 2, 3], 'B1': [4, 5, 6]})
# 将 A1 等于 1 的行的 B1 列设置为 2
df.loc[df['A1'] == 1, 'B1'] = 2
print(df)
```
输出如下:
```
A1 B1
0 1 2
1 2 5
2 3 6
```
在这个示例中,我们选择了 A1 等于 1 的行,然后将这些行的 B1 列设置为 2。你可以根据需要进行修改以适应你的数据。
相关问题
Python pandas实现多个表生成一个表格代码
可以使用 pandas 库中的 merge() 或者 join() 方法将多个表格合并成一个表格。
以 merge() 方法为例,假设有两个表格 A 和 B,它们都有一个共同的列名为 key。可以使用下面的代码将这两个表格合并成一个新的表格 C:
```python
import pandas as pd
# 创建表格 A
A = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3'],
'A': ['A0', 'A1', 'A2', 'A3'],
'B': ['B0', 'B1', 'B2', 'B3']})
# 创建表格 B
B = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3'],
'C': ['C0', 'C1', 'C2', 'C3'],
'D': ['D0', 'D1', 'D2', 'D3']})
# 合并表格 A 和 B
C = pd.merge(A, B, on='key')
print(C)
```
输出结果:
```
key A B C D
0 K0 A0 B0 C0 D0
1 K1 A1 B1 C1 D1
2 K2 A2 B2 C2 D2
3 K3 A3 B3 C3 D3
```
其中 merge() 方法的参数 on 指定需要合并的列名。如果要合并的列名不同,可以使用 left_on 和 right_on 分别指定左表格和右表格的列名。
类似的,使用 join() 方法也可以实现多个表格合并成一个表格。不同之处在于 join() 方法是按照索引(行标签)进行合并的。具体使用方法可参考 pandas 官方文档。
新建3列A1列,B1列,C1列,分别等于A、B、C列乘以exchange_rate
要在Python的DataFrame中创建新的列,可以使用`df['新列名']`来指定新列的名称,并通过对应的列进行运算。下面是一种实现方法:
```python
import pandas as pd
# 创建示例DataFrame
data = {'A': [10, 20, 30],
'B': [5, 10, 15],
'C': [2, 4, 6],
'exchange_rate': 1.5}
df = pd.DataFrame(data)
# 创建新列
df['A1'] = df['A'] * df['exchange_rate']
df['B1'] = df['B'] * df['exchange_rate']
df['C1'] = df['C'] * df['exchange_rate']
# 打印结果
print(df)
```
上述代码中,首先创建了一个示例DataFrame `df`,包含列A、B、C和exchange_rate。然后通过对应的列和exchange_rate进行乘法运算,创建了新列A1、B1和C1,并将结果赋值给这些新列。
执行上述代码后,您将得到一个新的DataFrame `df`,其中包含原始的A、B、C列,以及新的A1、B1和C1列。这些新列分别等于对应的A、B、C列乘以exchange_rate的结果。