datang daripada bingkai data berikut (df
):
|------------+--------------------+-------------| | child_code | child_name | parent_code | |------------+--------------------+-------------| | 900 | world | 0 | | 920 | south-eastern asia | 900 | | 702 | singapore | 920 | |------------+--------------------+-------------|
Saya ingin menjana bingkai data ini:
|------------+--------------------+-------------+--------------------| | child_code | child_name | parent_code | parent_name | |------------+--------------------+-------------+--------------------| | 900 | World | 0 | | | 920 | South-Eastern Asia | 900 | World | | 702 | Singapore | 920 | South-Eastern Asia | |------------+--------------------+-------------+--------------------|``` How could I make the equivalent of an MS Excel `vlookup` to produce the `parent_name` column?
Anda boleh gunakan series.map
:
import pandas as pd import numpy as np data = {'child_name': {0: 'World', 1: 'South-Eastern Asia', 2: 'Singapore'}, 'child_code': {0: 900, 1: 920, 2: 702}, 'parent_code': {0: 0, 1: 900, 2: 920}} df = pd.DataFrame(data) df['parent_name'] = df['parent_code'].map(df.set_index('child_code')['child_name']) df child_name child_code parent_code parent_name 0 World 900 0 NaN 1 South-Eastern Asia 920 900 World 2 Singapore 702 920 South-Eastern Asia
Atas ialah kandungan terperinci Bagaimana untuk vlookup dalam satu kerangka data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!