簡體   English   中英

數據框的熊貓索引列

[英]Pandas index column for a dataframe

大家好,我正在嘗試使用此數據集,該數據集包含兩列,一列是名稱,另一列是每個名稱的出生人數。 我想做的是導入一個csv文件,對其執行一些基本功能,例如查找具有最大出生數的嬰兒名字,然后將數據繪制在條形圖中。 但是,當我具有數據框的索引值時,條形圖會將其打印為x軸而不是名稱。 所以我刪除了索引,現在我遇到了各種各樣的錯誤。 下面是我的代碼,首先是帶有索引的代碼,然后是沒有索引的代碼。 提前致謝。 這真的讓我發瘋

import pandas as pd
import matplotlib.pyplot as plt
import pdb
import matplotlib as p
import os
from pandas import DataFrame
Location = os.path.join(os.path.sep,'Users', 'Mark\'s Computer','Desktop','projects','data','births1880.csv')
a = pd.read_csv(Location, index_col = False)
print(a) #print the dataframe just to see what I'm getting.
MaxValue = a['Births'].max()
MaxName = a['Names'][a['Births'] == MaxValue].values
print(MaxValue, ' ', MaxName)
a.plot(kind ='bar')
plt.show()

此代碼有效,但會彈出一個以索引為x軸而不是名稱的條形圖?

import pandas as pd
import matplotlib.pyplot as plt
import pdb
import matplotlib as p
import os
from pandas import DataFrame
Location = os.path.join(os.path.sep,'Users', 'Mark\'s Computer','Desktop','projects','data','births1880.csv')
a = pd.read_csv(Location, index_col = True) #why is setting the index column to true removing it?
print(a) #print the dataframe just to see what I'm getting.
MaxValue = a['Births'].max()
MaxName = a['Names'][a['Births'] == MaxValue].values
print(MaxValue, ' ', MaxName)
a.plot(kind ='bar', x='Names', y = 'Births' )
plt.show()

編輯為解決方案。

如果您提供了一個示例csv文件,那就太好了,所以我整理了一個文件,花了我一段時間來弄清楚pandas期望的格式。

我使用的test.csv如下所示:

names,briths
mike,3
mark,4

然后是我的python代碼:

import pandas
import numpy
import matplotlib.pyplot as plt

a = pandas.read_csv('test.csv', index_col = False)
a.plot(kind='bar')
indices = numpy.arange(len(a['names']))
plt.xticks( indices+0.5, a['names'].values)
plt.show()

結果

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM