कई Keys पर merge
rows को सिर्फ तभी match करने के लिए on को columns की list पास करें जब कई columns सहमत हों।
In this page:
Syntax
merged = pd.merge(left, right, on=["key1", "key2"])
merge on multiple keys
merge(on=["a", "b"]) को listed हर key का match होना ज़रूरी है। यह तब आवश्यक है जब कोई एक column row को पहचान न सके, जैसे year plus region। सभी keys दोनों tables में मौजूद होनी चाहिए या आप left_on और right_on lists का उपयोग कर सकते हैं।
Note:
सुनिश्चित करें कि key dtypes दोनों तरफ मेल खाते हों।
उदाहरण: merge on multiple keys
import pandas as pd
a = pd.DataFrame({"year": [2023, 2023, 2024], "region": ["N", "S", "N"], "sales": [10, 20, 30]})
b = pd.DataFrame({"year": [2023, 2024, 2024], "region": ["N", "N", "S"], "target": [12, 28, 15]})
print(a.merge(b, on=["year", "region"], how="left"))
# Output:
# year region sales target
# 0 2023 N 10 12.0
# 1 2023 S 20 NaN
# 2 2024 N 30 28.0
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the
view already swaps in the hi_ translation fields (or blanks these
out if untranslated), so this renders correctly for both languages
without a lang_code check here. #}
आम गलतियां
- एक key भूल जाना और duplicates पाना
- Dtypes को mismatched रखना
- यह मान लेना कि keys का order मायने रखता है
चैप्टर सारांश
- on keys की list लेता है
- सभी keys का match होना ज़रूरी है
- अलग नामों के लिए left_on/right_on का उपयोग करें
- Dtypes का मेल होना ज़रूरी है
🔒
Chapter Quiz — Complete all 7 topics to unlock
0/7 topics done
Complete these topics first: