2017-04-12 143 views
1

l有以下示例进行转换。连接好几个csv文件后,将每行0的索引保留到每个文件中文件的最后一行,如下所示。在csv文件中添加一个索引列

Column_1 column2 
0 m   4 
1 n   3 
2 4   6 
3 t   8 
0 h   8 
1 4   7 
2 kl   8 
3 m   4 
4 bv   5 
5 n   8 

现在我想在开始索引文件时添加另一列。

 Column_1 column2 
0 0 m   4 
1 1 n   3 
2 2 4   6 
3 3 t   8 
4 0 h   8 
5 1 4   7 
6 2 kl   8 
7 3 m   4 
8 4 bv   5 
9 5 n   8 

回答

2

Simpliest是MultiIndex.from_arrays通过numpy.arangerange

print (np.arange(len(df.index))) 
[0 1 2 3 4 5 6 7 8 9] 

n = ['a','b'] 
df.index = pd.MultiIndex.from_arrays([np.arange(len(df.index)), df.index], names= n) 
print (df) 
    Column_1 column2 
a b     
0 0  m  4 
1 1  n  3 
2 2  4  6 
3 3  t  8 
4 0  h  8 
5 1  4  7 
6 2  kl  8 
7 3  m  4 
8 4  bv  5 
9 5  n  8 
n = ['a','b'] 
df.index = pd.MultiIndex.from_arrays([range(len(df.index)), df.index], names= n) 
print (df) 
    Column_1 column2 
a b     
0 0  m  4 
1 1  n  3 
2 2  4  6 
3 3  t  8 
4 0  h  8 
5 1  4  7 
6 2  kl  8 
7 3  m  4 
8 4  bv  5 
9 5  n  8 

如果索引名是没有必要的,只要将:

df.index = [np.arange(len(df.index)), df.index] 
print (df) 
    Column_1 column2 
0 0  m  4 
1 1  n  3 
2 2  4  6 
3 3  t  8 
4 0  h  8 
5 1  4  7 
6 2  kl  8 
7 3  m  4 
8 4  bv  5 
9 5  n  8 
+0

嗯,一些问题呢? – jezrael