熊猫和numpy的数据预处理步骤不起作用

问题描述

我在关注this Tutorial regarding Markov Chains in Python.

时遇到麻烦

根据建议,我已经安装了Anaconda与vscode一起使用。按照本教程进行操作时,出现错误消息:

import pandas as pd
import numpy as pd
from collections import defaultdict

df = pd.read_csv('attribution data.csv')
df = df.sort_values(['cookie','time'],ascending=[False,True])
df['visit_order'] = df.groupby('cookie').cumcount() + 1
df_paths = df.groupby('cookie')['channel'].aggregate(
    lambda x: x.unique().tolist()).reset_index()
    
df_last_interaction = df.drop_duplicates('cookie',keep='last')[['cookie','conversion']]
df_paths = pd.merge(df_paths,df_last_interaction,how='left',on='cookie')

df_paths['path'] = np.where(
    df_paths['conversion'] == 0,['Start'] + df_paths['channel'] + ['Null'],['Start'] + df_paths['channel'] + ['Conversion'])

df_paths = df_paths[['cookie','path']]

按原样运行它会收到以下错误消息:

Traceback (most recent call last):
  File "e:\[my folder path]\tempCodeRunnerFile.py",line 5,in <module>
    df = pd.read_csv('attribution data.csv')
  File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\__init__.py",line 219,in __getattr__
    raise AttributeError("module {!r} has no attribute "
AttributeError: module 'numpy' has no attribute 'read_csv'

然后我尝试将import numpy as pd更改为import numpy as np,因为在第一个版本中我什么都找不到。这将导致以下错误消息:

Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\ops\array_ops.py",line 149,in na_arithmetic_op
    result = expressions.evaluate(op,str_rep,left,right)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\computation\expressions.py",line 208,in evaluate
    return _evaluate(op,op_str,a,b)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\computation\expressions.py",line 121,in _evaluate_numexpr
    result = _evaluate_standard(op,line 70,in _evaluate_standard
    return op(a,b)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\ops\roperator.py",line 9,in radd
    return right + left
TypeError: can only concatenate str (not "list") to str

During handling of the above exception,another exception occurred:

Traceback (most recent call last):
  File "e:\[my folder path]\tempCodeRunnerFile.py",line 17,in <module>
    ['Start'] + df_paths['channel'] + ['Null'],File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\ops\common.py",line 64,in new_method
    return method(self,other)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\ops\__init__.py",line 503,in wrapper
    result = arithmetic_op(lvalues,rvalues,op,str_rep)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\ops\array_ops.py",line 197,in arithmetic_op
    res_values = na_arithmetic_op(lvalues,line 151,in na_arithmetic_op
    result = masked_arith_op(left,right,op)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\ops\array_ops.py",line 98,in masked_arith_op
    raise TypeError(type(y))
TypeError: <class 'list'>

我以前从未与Data Science合作过,并且希望至少运行这部分,因为结果可以在R或python中用于以下步骤。我为自己的无知表示歉意。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)