在绘图时替换数据框中的标签

问题描述 投票:0回答:1

我的dat.csv如下:

State, Pop
AP,100
UP,200
TN,90

我想绘制它,所以我的代码如下:

import pandas as pd
import matplotlib.pyplot as plt

df = pd.read_csv('dat.csv')

df.plot(kind='bar').set_xticklabels(df.State)
plt.show()

但是,我想替换另一个csv文件中的标签,

labels.csv

Column,Name,Level,Rename
State,AP,AP,Andhra Pradesh
State,TN,TN,Tamil Nadu
State,UP,UP,Uttar Pradesh

我是否可以使用labels.csv文件中的标签替换图中的标签?

python-2.7 pandas csv dataframe
1个回答
1
投票

使用merge + set_index

df=df.merge(labels,left_on='State',right_on='Name',how='left')
df
Out[1094]: 
  State   Pop Column Name Level          Rename
0    AP   100  State   AP    AP  Andhra Pradesh
1    UP   200  State   UP    UP   Uttar Pradesh
2    TN    90  State   TN    TN      Tamil Nadu



df.set_index('Rename')['Pop'].plot(kind='Bar')

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.