2016-11-21 43 views
0

我正在尋找一種更高效的方式來做到這一點,因爲我是新的python。我想要一個數據框的cyl值和計數 - 理想情況下,不必去做重命名列。我來自R.頻率表作爲熊貓的數據幀

發生了什麼是'cyl'是索引如果我不使用to-frame.reset-index一段代碼,並且當我使用重置索引代碼時它變成一個名爲「索引」列 - 這是真正的共青團值,而第二列「共青團」是真正的頻率計數..

import pandas as pd 

new_df = pd.value_counts(mtcars.cyl).to_frame().reset_index() 
new_df.columns = ['cyl', 'frequency'] 

回答

0

我想你可以省略to_frame()

new_df = pd.value_counts(mtcars.cyl).reset_index() 
new_df.columns = ['cyl', 'frequency'] 

樣品:

mtcars = pd.DataFrame({'cyl':[1, 2, 2, 4, 4]}) 
print (mtcars) 
    cyl 
0 1 
1 2 
2 2 
3 4 
4 4 

new_df = pd.value_counts(mtcars.cyl).reset_index() 
new_df.columns = ['cyl', 'frequency'] 
print (new_df) 
    cyl frequency 
0 4   2 
1 2   2 
2 1   1