【发布时间】:2018-12-24 02:25:08
【问题描述】:
我有一个数据框,其中包含多个带有浮点值的列。
df = pd.DataFrame({
"v0": [0.493864,0.378362,0.342887,0.308959,0.746347],
"v1":[0.018915,0.018535,0.019587,0.035702,0.008325],
"v2":[0.252000,0.066746,0.092421,0.036694,0.036506],
"v3":[0.091409,0.103887,0.098669,0.112207,0.043911],
"v4":[0.058429,0.312115,0.342887,0.305678,0.103065],
"v5":[0.493864,0.378362,0.338524,0.304545,0.746347]})
我需要通过将df['v0'] 中每一行的值与后续列 v1-v5 中的行值进行比较,在 df 中创建另一列结果。
我需要的如下:
v0 v1 v2 v3 v4 v5 Result
0 0.493864 0.018915 0.252000 0.091409 0.058429 0.493864 1
1 0.378362 0.018535 0.066746 0.103887 0.312115 0.378362 1
2 0.342887 0.019587 0.092421 0.098669 0.342887 0.338524 1
3 0.308959 0.035702 0.036694 0.112207 0.305678 0.304545 0
4 0.746347 0.008325 0.036506 0.043911 0.103065 0.746347 1
我尝试了很多方法,包括 This link 和 This link
但我要求的任务似乎不可行。 自最近几天以来,我一直在为此苦苦挣扎。我拥有的原始数据集有超过 60000 行。请建议最好最快的方法
【问题讨论】:
-
@user32185 建议对浮点列进行相等比较不是一个好主意。
-
@coldspeed 我同意。这就是为什么我建议我们 OP 举一个突出显示的例子。
标签: python pandas dataframe floating-point