我有一个如下所示的数据框:
Index Z1 Z2 Z3 Z4
0 0 0 A A
1 0 B 0 0
2 C 0 C 0
我想将其转换为
Index Z1 Z2 Z3 Z4
ABC
0 0 0 A A
1 0 B 0 0
2 C 0 C 0
我想基本上在第0个索引之前插入文本“ABC”,整个行(ABC)将没有任何值 如果索引从1开始而不是0,则可以接受
Index Z1 Z2 Z3 Z4
ABC
1 0 0 A A
2 0 B 0 0
3 C 0 C 0
答案 0 :(得分:3)
您似乎需要设置索引名称或列名称。但是有可能将一些pandas功能移除它。
<div class="navbar navbar-expand navbar-dark" id="nav-container-mobile">
<div class="container-fluid">
<ul class="navbar-nav nav-fill w-100">
<li class="nav-item">
<a class="nav-link" href="#">Profile</a>
</li>
<li class="nav-item">
<a class="nav-link" href="">Experience</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Skills</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Projects</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Contact</a>
</li>
</ul>
</div>
</div>
#nav-container-mobile {
width: 100%;
height: 70px;
padding: 0;
background: #292929;
z-index: 5;
}
.nav-link {
color: #aeaeae;
}
最好是创建print (df.index.name)
None
print (df.columns.name)
Index
df.index += 1
df.index.name = 'ABC'
print (df)
Index Z1 Z2 Z3 Z4
ABC
1 0 0 A A
2 0 B 0 0
3 C 0 C 0
并按MultiIndex
选择:
loc
此外,如果需要使用相同结构的多个mux = pd.MultiIndex.from_product([['ABC'], df.index + 1])
df = df.set_index(mux)
print (df)
Z1 Z2 Z3 Z4
ABC 1 0 0 A A
2 0 B 0 0
3 C 0 C 0
print (df.loc['ABC'])
Z1 Z2 Z3 Z4
1 0 0 A A
2 0 B 0 0
3 C 0 C 0
,请使用concat
DataFrames
keys
来填充MultiIndex
:
#sample only, in real df1, df2, ... dfn
dfs = [df,df,df]
df = pd.concat(dfs, keys=('a','b','c'))
print (df)
Z1 Z2 Z3 Z4
a 0 0 0 A A
1 0 B 0 0
2 C 0 C 0
b 0 0 0 A A
1 0 B 0 0
2 C 0 C 0
c 0 0 0 A A
1 0 B 0 0
2 C 0 C 0
答案 1 :(得分:2)
In [53]: df.rename_axis('ABC').rename_axis('Index',1)
Out[53]:
Index Z1 Z2 Z3 Z4
ABC
0 0 0 A A
1 0 B 0 0
2 C 0 C 0
以1
开头的索引:
In [54]: df.set_index(df.index+1).rename_axis('ABC').rename_axis('Index',1)
Out[54]:
Index Z1 Z2 Z3 Z4
ABC
1 0 0 A A
2 0 B 0 0
3 C 0 C 0
<强>更新强>
主要目的是我有许多这样的数据框,我追加 创建一个最终的csv.So,以区分这些 最终csv中的数据帧我在开头插入文本 每个数据帧
我建议将您的数据存储在HDF5文件中 - 与CSV相比,它有很多优点:
演示:
df.to_hdf(r'/path/to/file.h5', 'ABC', data_columns=True)
df2.to_hdf(r'/path/to/file.h5', 'DEF', data_columns=True)