gpt4 book ai didi

python - 使用 pandas 对数据集进行因式分解

转载 作者:行者123 更新时间:2023-12-01 09:17:01 25 4
gpt4 key购买 nike

我对 Python 很陌生。我有一个 pandas 数据框:

d={'col1': [100000, 939321, 28923,100000], 'col2': [-11234, 114567,21234,-11234]}               
mydata=pandas.DataFrame(data=d)

现在我想将此数据帧转换为因子,以获得 [1,2,3,1][1,2,3,1]

我尝试过:

from collections import Counter
mydata.col1.factorize(list(range(Counter(mydata.col1.factorize))),sort=True)

但我得到:

factorize() got multiple values for argument 'sort'

最佳答案

这是因为您正在调用 factorize作为 pandas.Series 的成员函数对象(在您的情况下,您从 mydata.col1 调用它)。在这种情况下,函数调用的第一个参数是 sort选项,当您传递另一个 pandas.Series 时。函数的详细签名参见

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.factorize.html

我怀疑您试图调用 factorize pandas的功能模块。在这种情况下,调用的第一个参数是 pandas.Series第二个是 sort选项

https://pandas.pydata.org/pandas-docs/version/0.22/generated/pandas.factorize.html

然后代码的最后一行看起来像这样

pandas.factorize(mydata.col1, sort=True)

附注我怀疑您想访问上面的第一个元素

pandas.factorize(mydata.col1, sort=True)[0]

关于python - 使用 pandas 对数据集进行因式分解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51150050/

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