Python TypeError:append()缺少1个必需的位置参数:';其他';
我有几个数据帧(形状相同),我想附加它们来创建一个更大的数据帧。T形三通单个数据帧均具有以下类型:Python TypeError:append()缺少1个必需的位置参数:';其他';,python,pandas,Python,Pandas,我有几个数据帧(形状相同),我想附加它们来创建一个更大的数据帧。T形三通单个数据帧均具有以下类型: C-Mastersheet.xlsx <class 'pandas.core.frame.DataFrame'> D-Mastersheet.xlsx <class 'pandas.core.frame.DataFrame'> L-Mastersheet.xlsx <class 'pandas.core.frame.DataFrame'> D-Ma
C-Mastersheet.xlsx <class 'pandas.core.frame.DataFrame'>
D-Mastersheet.xlsx <class 'pandas.core.frame.DataFrame'>
L-Mastersheet.xlsx <class 'pandas.core.frame.DataFrame'>
D-Mastersheet.xlsx
First Name Last name Dept Location Status Concat
0 Phil Evans Production Hull Current EvansPhil
1 Sarah Heath Marketing Bristol Current HeathSarah
2 Jane Hill Accounts Bristol Current HillJane
3 Amy Cooper Sales Hull Current CooperAmy
First Name Last name Dept Location Status Concat
0 Marcus Price Operations Hull Current PriceMarcus
1 Andrew King Design Bristol Current KingAndrew
2 Emma Lane Marketing Bristol Current LaneEmma
3 Brian Deen Accounts Bristol Current DeenBrian
4 Steve Jacks Design Bristol Current JacksSteve
L-Mastersheet.xlsx
First Name Last name Dept Location Status Concat
0 Phil Evans Production Hull Current EvansPhil
1 Sarah Heath Marketing Bristol Current HeathSarah
2 Jane Hill Accounts Bristol Current HillJane
3 Amy Cooper Sales Hull Current CooperAmy
First Name Last name Dept Location Status Concat
0 Marcus Price Operations Hull Current PriceMarcus
1 Andrew King Design Bristol Current KingAndrew
2 Emma Lane Marketing Bristol Current LaneEmma
3 Brian Deen Accounts Bristol Current DeenBrian
4 Steve Jacks Design Bristol Current JacksSteve
我正在尝试返回输出:
First Name Last name Dept Location Status Concat
0 Jo Jones Accounts Bristol Current JonesJo
1 Sid Smith Sales Hull New SmithSid
2 Phil Evans Production Hull Current EvansPhil
3 Sarah Heath Marketing Bristol Current HeathSarah
4 Jane Hill Accounts Bristol Current HillJane
5 Amy Cooper Sales Hull Current CooperAmy
6 Marcus Price Operations Hull Current PriceMarcus
7 Andrew King Design Bristol Current KingAndrew
8 Emma Lane Marketing Bristol Current LaneEmma
9 Brian Deen Accounts Bristol Current DeenBrian
10 Steve Jacks Design Bristol Current JacksSteve
我尝试使用以下代码来完成此操作,whioch在目录中循环:
ConsolidatedData = pd.DataFrame
for i in os.listdir(os.chdir(returnsfolder)):
if i.endswith(".xlsx"):
)
rawFilePath = returnsfolder +'\\'+ i
DeptReturn = openRawDeptReturn(rawFilePath)
ConsolidatedData = ConsolidatedData.append(DeptReturn,ignore_index=True)
但是,我收到以下类型错误:
TypeError: append() missing 1 required positional argument: 'other'
我以前从未遇到过这个问题。这就是问题所在:
df = pd.DataFrame # returns class
df = df.append(DeptReturn) # TypeError: append() missing 1 required positional argument: 'other'
错误背后的原因是方法的第一个参数是类实例。在这种情况下,类实例被推断为DeptReturn
,并且没有提供“other”参数
您需要的是:
df = pd.DataFrame() # returns class instance
df = df.append(DeptReturn) # returns instance with method applied
对于第一个参数,我们有类实例df
,因为该方法正在该实例上应用。第二个参数是DeptReturn
另请参见:这不应该是ConsolidatedData=pd.DataFrame()
?是的,就是这样……可能应该删除这个问题,因为它是一个typo@EdChum,或者(让我们不要忽略这个解释),类和类实例之间的一个基本误解@jpp当然可以,但这是由于输入错误造成的错误,不太可能对未来的访问者有帮助。我会保留你的答案,但也会保留职训局的答案。