我想从一个空数据框开始,然后每次添加一行。
我甚至可以从0数据帧data=pd.DataFrame(np.zeros(shape=(10,2)),column=["a","b"])
开始,然后每次更换一行。
我该怎么做?
答案 0 :(得分:7)
使用.loc
进行基于标签的选择,了解如何正确切片非常重要:http://pandas.pydata.org/pandas-docs/stable/indexing.html#selection-by-label并理解为什么要避免链式分配:http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
In [14]:
data=pd.DataFrame(np.zeros(shape=(10,2)),columns=["a","b"])
data
Out[14]:
a b
0 0 0
1 0 0
2 0 0
3 0 0
4 0 0
5 0 0
6 0 0
7 0 0
8 0 0
9 0 0
[10 rows x 2 columns]
In [15]:
data.loc[2:2,'a':'b']=5,6
data
Out[15]:
a b
0 0 0
1 0 0
2 5 6
3 0 0
4 0 0
5 0 0
6 0 0
7 0 0
8 0 0
9 0 0
[10 rows x 2 columns]
答案 1 :(得分:0)
如果要替换整行,则可以只使用索引,而不需要行,列切片。 ...
data.loc [2] = 5,6