我有700列数据框。
我想将a
添加到最后一行的每一列中,我该怎么做?
col. col2
1. 2
3. 2
a. a
答案 0 :(得分:1)
loc
在一起请注意,我指定了索引值'new_idx'
。我没有对您的索引做任何假设。即使您使用len(df)
,它也可能已经作为索引值存在。我不知道因此,您必须使用新的索引值。如果不是新的,则它将覆盖现有行。
df.loc['new_idx'] = ['a' for _ in range(df.shape[1])]
append
这不太严格。如果'new_idx'
中已经存在索引值df.index
,这将使另一行具有重复的索引值。
df.append(pd.Series('a', df.columns, name='new_idx'))
答案 1 :(得分:1)
在大多数情况下,使用loc(并传递数据帧的长度)是可行的:
df.loc[len(df)] = 'a'
完整示例
import pandas as pd
df = pd.DataFrame({
'col1': [1, 2],
'col2': [3, 4]
})
df.loc[len(df)] = 'a'
print(df)
# col1 col2
#0 1 3
#1 2 4
#2 a a
小警告:这假设您有一个以0开头的索引。(并且由于索引以0开头,因此len(df)是行中的下一个数字。)
如果索引编号不正确,可能的解决方法:使用df.reset_index(drop=True, inplace=True)
答案 2 :(得分:0)
您可以使用loc方法,如下所示:
#df being the original dataframe
df.loc[len(df)] = [ 'a' for _ in range(df.shape[1])]