簡體   English   中英

Pandas dataframe 加入所有元素

[英]Pandas dataframe join on all elements

我正在嘗試在 pandas 中加入兩個數據幀。 一個 dataframe 在一列中包含 URL,其中包含重復項(相同的值重復)。

第二個 dataframe 包含這些 URL 的一些屬性,但只有唯一的 URL,沒有重復。

我正在嘗試返回 map 或加入兩個數據幀,我在第一個 dataframe 中獲取 URL 的這些屬性,以獲取所有出現的 URls。

示例:數據框 1: 第一個帶有重復 URL 的數據框

數據框2: 數據框,其中來自 datafram1 的唯一 URL 具有 URL 的某些屬性

結果數據框: 結果數據框,其中所有 URL 的所有重復出現都將屬性映射到自身

如何做到這一點? 哪個特別加盟| 連接 | 或合並方法用於組合所有行上的數據框。

上面的 dataframe 只是示例,實際的 dataframe 有 300 多個唯一 URL,第一個 dataframe 有 1000 行。

我試過內連接和外連接,都不行。

這是一個應該直接適用的工作示例。

import pandas as pd

df = pd.DataFrame(zip([1,2,3,2,3,1],[7,8,9,10,11,12]),columns=["A","B"])
print(df)
df2 = pd.DataFrame(zip([1,2,3],["foo","baz","bar"]),columns=["A","X"])
print(df2)
df3 = df.join(df2.set_index('A'), on='A')
print(df3)

您將使用類似dataframe1.join(dataframe2.set_index("url"),on="url")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM