gpt4 book ai didi

python - 如何使用基于集合的逻辑将计算列添加到 pandas 数据框?

转载 作者:行者123 更新时间:2023-11-28 20:40:00 26 4
gpt4 key购买 nike

我是 python 的新手(T-SQL 和 R 的背景),正在寻找一种基于集合的方法来将计算列添加到 Pandas Dataframe。 R 和 T-SQL 对此概念有简单的实现,但我还没有在 Python 中找到解决方案。

This question是我正在寻找的一种迭代方法。我正在寻找更多基于集合的东西,但尚未找到解决方案。

这是一个来自 R 的例子:

# New column that shows if the value in column A is greater than the value in column B

myDataFrame$CalculatedColumn = ifelse(myDataFrame$columnA > myDataFrame$columnB,TRUE,FALSE)

此语句将添加一个新的计算列,而不需要逐行评估代码。

Python(或任何 Python 包)是否支持这样的概念?还是在 for 循环中调用 iterrows() 是最实用的解决方案?

如果需要任何说明,请告诉我 - 感谢您的帮助!

最佳答案

您可以使用 np.where为此:

import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.randint(10, size=(10,2)), columns = ["A", "B"])
df
Out[46]:
A B
0 2 8
1 9 5
2 4 4
3 6 0
4 5 5
5 0 8
6 7 9
7 6 3
8 0 9
9 0 9

df["C"] = np.where(df["A"] > df["B"], True, False)
df
Out[48]:
A B C
0 2 8 False
1 9 5 True
2 4 4 False
3 6 0 True
4 5 5 False
5 0 8 False
6 7 9 False
7 6 3 True
8 0 9 False
9 0 9 False

关于python - 如何使用基于集合的逻辑将计算列添加到 pandas 数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36749741/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com