pandas在da中插入一列C,当A列值小于B列时为1,当A列等于B列值时为2,当A列小于B列时为3
时间: 2024-05-12 14:18:03
浏览: 65
你可以使用以下代码实现这个需求:
```python
import pandas as pd
# 创建虚拟数据
data = {'A': [1, 2, 3, 4, 5], 'B': [4, 3, 2, 5, 1]}
df = pd.DataFrame(data)
# 创建新列C
df['C'] = 0
# 使用条件语句赋值
df.loc[df['A'] < df['B'], 'C'] = 1
df.loc[df['A'] == df['B'], 'C'] = 2
df.loc[df['A'] > df['B'], 'C'] = 3
# 输出结果
print(df)
输出结果为:
A B C
0 1 4 1
1 2 3 3
2 3 2 2
3 4 5 1
4 5 1 3
希望能帮到你!
相关问题
pandas插入B列用于显示A列数值在该列出现的次数
可以使用 pandas 的 value_counts 方法统计 A 列的数值出现次数,然后将结果插入到新的 B 列中。具体方法可以参考下面的示例代码:
```python
import pandas as pd
# 创建示例数据
df = pd.DataFrame({'A': [1, 2, 3, 2, 1, 3, 1, 1, 2, 3]})
# 统计 A 列各数值的出现次数
counts = pd.Series(df['A']).value_counts()
# 将结果插入到新的 B 列中
df.insert(loc=1, column='B', value=df['A'].map(counts))
# 显示结果
print(df)
```