python - 将每一行与 apply() 进行比较以加快运行速度
问题描述
我想加快我的程序来比较每一行。我正在考虑使用 pandas apply() 方法,但我无法确定它是如何使用的。
这是我要比较的数据: 数据
我想比较每一行变成这样
目前我正在使用下面的代码:
df = pd.read_excel(r'example.xlsx',sheet_name='Sheet3')
df['Title_new'] = df[df.columns[2:]].apply(lambda x: ','.join(x.dropna().astype(str)),axis=1)
r_list = []
for i in range(len(df['Title_new'])):
list1 = df['Title_new'][i]
index_a = df['index'][i]
source_a = df['Source'][i]
for j in range(len(df['Title_new'])):
list2 = df['Title_new'][j]
index_b = df['index'][j]
source_b = df['Source'][j]
if index_a == index_b :
continue
r_list.append([index_a,source_a,list1,index_b,source_b,list2])
print([index_a,source_a,list1,index_b,source_b,list2])
r_df = pd.DataFrame(r_list)
r_df.columns= ['index_a','source_a','title_a','index_b','source_b','title_b']
r_df
解决方案
推荐阅读
- python - 前端到后端无法接收数据
- python - Python Buffer API 图片上传
- android - addOnSuccessListener (Firebase)从未调用,即使 putFile 方法成功上传文件
- ios - 通过 react-native 代码在 Xcode 中构建错误
- angular - 在我选择下拉选项中的任何选项后,无法更新按钮的文本。角 6
- arrays - 迭代 PostgreSQL 中的 json 数组元素
- ios - 声音与画外音和 AVFoundation 播放器重叠
- azure - AZURE HD INSIGHT (Cluster) 将 CSV 文件导入存储:创建表
- go - 使用 godoc 启动本地文档服务器时出现问题
- excel - Excel Power Query:从具有多个未固定工作表的多个未固定文件中获取数据