Python 将步骤转换为更具可读性的内容
我正在编写一个函数,该函数创建一个数据帧并向其追加一个新列。此新列是基于其他列数据的哈希:Python 将步骤转换为更具可读性的内容,python,Python,我正在编写一个函数,该函数创建一个数据帧并向其追加一个新列。此新列是基于其他列数据的哈希: df['uniqueid'] = df[['column_a', 'column_b', ... 'column_x']].\ apply(lambda x: ed.generate_unique_ids( [ x['column_a'],
df['uniqueid'] = df[['column_a', 'column_b', ... 'column_x']].\
apply(lambda x: ed.generate_unique_ids(
[
x['column_a'],
x['column_b'],
...
x['column_x']
]), axis=1)
是否可以在可读性更强的代码上编写此代码?我不知道如何提高可读性
基本上,我想选择一些列并将其传递给另一个函数,该函数将根据这些值给我一个哈希值
我不熟悉蟒蛇和熊猫 这更像是一个代码审查问题,但是您可以通过迭代底层列表/数组并将它们直接传递给列表中的函数来提高性能和可读性
cols = ['column_a', 'column_b', ... 'column_x']
df['unique_id'] = [ed.generate_unique_ids(r) for r in df[cols].values.tolist()]
这更像是一个代码检查问题,但是您可以通过迭代底层列表/数组并将它们直接传递给列表中的函数来提高性能和可读性
cols = ['column_a', 'column_b', ... 'column_x']
df['unique_id'] = [ed.generate_unique_ids(r) for r in df[cols].values.tolist()]
酷!不需要使用列表理解调用
apply(lambda,axis)
?否,因为df[cols].values.tolist()已经从数据帧创建了行列表。列表理解,迭代每一行,生成一个唯一的id,并将其保存在dataframe的一个新列中。@不,不需要。酷!不需要使用列表理解调用apply(lambda,axis)
?否,因为df[cols].values.tolist()已经从数据帧创建了行列表。列表理解,迭代每一行,生成一个唯一的id,并将其保存在dataframe的新列中。@No,不需要。