gpt4 book ai didi

python - pandas:使用具有相同索引的第二个系列来更改一个系列

转载 作者:行者123 更新时间:2023-12-01 06:02:01 24 4
gpt4 key购买 nike

最近我正在用 pandas 做两个系列的工作:

  • 第一个系列包含纯数字数据
  • 第二个系列包含分类数据:“Plus”、“Minus”和 NaN。

示例数据:

first_series = pandas.Series([0.000003, 0.004991, 0.004991])
second_series = pandas.Series(["Plus", "Minus", np.nan], dtype="object",
index=first_series.index)

(在现实场景中,第二个系列是使用与第一个系列相同的索引以编程方式构建的,但这里只是一个简化的示例)

我首先要做一些操作:

first_series = np.log2(1 / first_series)

然后我需要反转相应“减”条目的符号(乘以-1),并转向 NaN 第二个系列中的 NaN.

后一部分工作正常:

first_series[np.invert(second_series.notnull())] = np.nan

print first_series

0 18.567557
1 7.646459
2 NaN
Name: Example data

但是我有点坚持前一部分。如何使用第二个系列中的信息(假设它们具有相同的索引)来切换第一个系列中的符号?

作为引用,应用后,first_series应该变成这样:

0    18.567557
1 -7.646459
2 NaN
Name: Example data

最佳答案

first_series[second_series == 'Minus'] *= -1
first_series[second_series.isnull()] = np.nan

给你:

0    18.346606
1 -7.646455
2 NaN

关于python - pandas:使用具有相同索引的第二个系列来更改一个系列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9941288/

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