在pandas中,我需要从列中提取唯一值并将它们显示为一列。
以下是我的数据:
Year,State,City,Month,Revenue,Cost
2012,FL,MI,1,10,5
2012,FL,MI,2,20,10
2012,FL,MI,2,20,5
2012,FL,MI,3,30,10
2012,FL,TA,1,10,5
2012,FL,TA,2,20,10
2012,GA,AT,1,10,5
2012,GA,AT,2,20,10
2012,GA,CO,1,10,5
2012,GA,CO,2,20,10
2013,FL,MI,1,10,5
2013,FL,MI,2,20,10
2013,FL,MI,2,20,5
2013,FL,TA,1,10,10
2013,FL,TA,2,20,5
2013,GA,AT,1,10,10
2013,GA,AT,2,20,5
2013,GA,CO,1,10,10
2013,GA,CO,2,20,5我需要提取每个州的唯一名称,然后像这样显示它们:
State
AL
FL
GA我在Pandas中尝试过各种方法。看起来pivot_table喜欢改变数据的格式。通常我会得到一个列表:
['FL' 'GA']我想我可以在City列上调用unique。当我想以这种格式看到多个列时,这个问题就开始起作用了。以State, City.为例
输出将为:
FL, MI,
FL, TA,
GA, AT
...所以它最终是一个groupby,但如果我不是在寻找一个值,它会给出一些奇怪的输出。
任何帮助都将不胜感激。
发布于 2020-08-19 06:44:40
使用pandas.DataFrame()将从pandas.unique()获得的列表转换为数据帧
res = pd.DataFrame(df.State.unique(),columns=‘状态’)
发布于 2020-08-19 09:59:30
你可以试试
unique_df = df[['state','city']].drop_duplicates()https://stackoverflow.com/questions/63477527
复制相似问题