假设我有一个空数据框,已经设置了列,但没有行。我正在从网络上抓取一些数据,所以假设我需要将索引 '2176'
添加到空数据框。当我尝试分配它时,如何自动将此行添加到数据库中?这甚至是 pandas 的目的还是我应该使用其他东西?
最佳答案
作为 .loc
的替代方案,您可能需要考虑 at
.使用@NickBraunagel 的示例:
df = pd.DataFrame(columns=['foo1','foo2'])
然后
df.at['2716', 'foo1'] = 10
产量
foo1 foo2
2716 10 NaN
时间完全不同:
# @NickBraunagel's solution
%timeit df.loc['2716', 'foo1'] = 10
1000 loops, best of 3: 212 µs per loop
# the at solution
%timeit df.at['2716', 'foo1'] = 10
100000 loops, best of 3: 12.5 µs per loop
如果你想同时添加多个列条目,你可以这样做:
d = {'foo1': 20, 'foo2': 10}
df.at['1234', :] = d
屈服
foo1 foo2
2716 10 NaN
1234 20 10
但是,请确保始终添加相同的数据类型以避免错误或其他不良影响,如 here 所述。 .
关于python - 动态添加行到 DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48030350/