替换pandas数据帧中的行

时间:2014-02-12 09:34:01

标签: python pandas dataframe

我想从一个空数据框开始,然后每次添加一行。 我甚至可以从0数据帧data=pd.DataFrame(np.zeros(shape=(10,2)),column=["a","b"])开始,然后每次更换一行。

我该怎么做?

2 个答案:

答案 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