Python 调用函数的问题

Python 调用函数的问题,python,function,pandas,dataframe,Python,Function,Pandas,Dataframe,我有一个名为ro的数据框,它包含了汽车零件的所有声明,我现在想要的是创建一个名为part\u dataframe的函数,在这个函数中,我可以将原始ro子集为一个新的数据框,其中只包含一个特定的零件,比如子集名为comp\u claims 我的职能是: def part_dataframe(first_frame, subset, type_number, number): subset = first_frame.loc[first_frame[type_number] == number

我有一个名为
ro
的数据框,它包含了汽车零件的所有声明,我现在想要的是创建一个名为
part\u dataframe
的函数,在这个函数中,我可以将原始
ro
子集为一个新的数据框,其中只包含一个特定的零件,比如子集名为
comp\u claims

我的职能是:

def part_dataframe(first_frame, subset, type_number, number):
   subset = first_frame.loc[first_frame[type_number] == number]
   subset = subset.reset_index(drop=True)
   subset['word'] = subset.Comment.str.split().apply(lambda x: pd.value_counts(x).to_dict())
当我尝试调用该函数时:

part_dataframe(ro, comp_claims, 'Part No.', '97701')
我得到以下错误:

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-17-65cf8428af26> in <module>()
----> 1 part_dataframe(ro, comp_claims, 'Part No.', '97701')

NameError: name 'comp_claims' is not defined
---------------------------------------------------------------------------
NameError回溯(最近一次呼叫上次)
在()
---->1部分数据帧(ro,公司索赔,“零件号”,“97701”)
名称错误:未定义名称“comp_claims”
我怎样才能解决这个问题? 先谢谢你

ro = pd.DataFrame(
    {'Part No.': np.arange(10)}
)

def part_dataframe(first_frame, type_number, number):
    return first_frame.loc[first_frame[type_number] == number]

subset = part_dataframe(ro, 'Part No.', 3)
subset

在调用
part\u dataframe
函数之前,您确定为
comp\u claims
分配了一个值吗?检查拼写和范围。为什么函数会立即覆盖您要传入的
comp_声明的
子集
?它应该是返回值吗?你能显示完整的代码吗,包括你在哪里定义
comp_索赔
?是的,你是对的,
comp_索赔
只是我要创建的新子集的名称,它将按编号
97701
从数据框
ro
中筛选列
零件号,
comp_声称
将是一个新的数据帧