擅长:python、mysql、java
<p>你不能用你创建的函数来做你想做的事。例如,每次执行<code>df['SPECIALUSER']=1</code>操作时,它都会将1赋给整列,而不仅仅赋给您认为目标行。
要将每个值赋给正确的行,必须将值分别赋给每个列:</p>
<pre><code>df['SPECIALUSER'] = np.where(df['column3'] >= 1000, 1, 0)
df['NORMALUSER'] = np.where((df['column3'] - 1000) >= 512, 1, 0)
...
</code></pre>
<p>我不完全理解你用来分配1和0的逻辑,但是如果你纠正了这个错误,并且对所有你需要的列重复我上面写的内容,你应该能够得到你想要的结果。你知道吗</p>