從資料框中,在“區域”中獲取唯一值并希望提取“名稱”但是,當一個名稱在區域中時,它會拼出名稱(linda 而不是 linda)
import pandas as pd
data = {
'Region': ['South','West', 'North','West', 'North', 'South','West', 'North', 'East'],
'Name': ['Tom', 'nick', 'krish', 'jack','peter','sam','jon','megan','linda']
}
df = pd.DataFrame(data)
list_region = df['Region'].unique().tolist()
for region in list_region:
list_person = df.set_index('Region').loc[region, 'Name']
for person in list_person:
print(region ' >> ' person)
部分輸出如下,linda 被拼寫出來
North >> megan
East >> l
East >> i
East >> n
East >> d
East >> a
uj5u.com熱心網友回復:
您可以使用該value_counts()函式,然后僅獲取結果的索引:
import pandas as pd
data = {
'Region': ['South','West', 'North','West', 'North', 'South','West', 'North', 'East'],
'Name': ['Tom', 'nick', 'krish', 'jack','peter','sam','jon','megan','linda']
}
df = pd.DataFrame(data)
combinations = df.value_counts().index.to_list()
產生:
[('East', 'linda'),
('North', 'krish'),
('North', 'megan'),
('North', 'peter'),
('South', 'Tom'),
('South', 'sam'),
('West', 'jack'),
('West', 'jon'),
('West', 'nick')]
然后是格式化:
for item in combinations:
print(item[0] ' >> ' item[1])
輸出:
East >> linda
North >> krish
North >> megan
North >> peter
South >> Tom
South >> sam
West >> jack
West >> jon
West >> nick
uj5u.com熱心網友回復:
你可以試試這個:
df = pd.DataFrame(data)
list_region = df['Region'].unique().tolist()
for region in list_region:
list_person = df.set_index('Region').loc[region, 'Name']
if type(list_person) == str:
list_person = [list_person]
for person in list_person:
print(region ' >> ' person)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/525784.html
標籤:Python熊猫数据框
上一篇:PandasDataFramepivot_table行中的年和月,專案為列
下一篇:分析和過濾資料框中的調查回應
