I'm trying to make a table, and the way Pandas formats its indices is exactly what I'm looking for. That said, I don't want the actual data, and I can't figure out how to get Pandas to print out just the indices without the corresponding data.
05 Answers
You can access the index attribute of a df using .index:
In [277]: df = pd.DataFrame({'a':np.arange(10), 'b':np.random.randn(10)}) df Out[277]: a b 0 0 0.293422 1 1 -1.631018 2 2 0.065344 3 3 -0.417926 4 4 1.925325 5 5 0.167545 6 6 -0.988941 7 7 -0.277446 8 8 1.426912 9 9 -0.114189 In [278]: df.index Out[278]: Int64Index([0, 1, 2, 3, 4, 5, 6, 7, 8, 9], dtype='int64') 2.index.tolist() is another function which you can get the index as a list:
In [1391]: datasheet.head(20).index.tolist() Out[1391]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] You can access the index attribute of a df using df.index[i]
>> import pandas as pd >> import numpy as np >> df = pd.DataFrame({'a':np.arange(5), 'b':np.random.randn(5)}) a b 0 0 1.088998 1 1 -1.381735 2 2 0.035058 3 3 -2.273023 4 4 1.345342 >> df.index[1] ## Second index >> df.index[-1] ## Last index >> for i in xrange(len(df)):print df.index[i] ## Using loop ... 0 1 2 3 4 You can use lamba function:
index = df.index[lambda x : for x in df.index() ] print(index) 1You can always try df.index. This function will show you the range index.
Or you can always set your index. Let say you had a weather.csv file with headers: 'date', 'temperature' and 'event'. And you want set "date" as your index.
import pandas as pd df = pd.read_csvte'weather_file) df.set_index('day', inplace=True) df