创建一个5行5列的dataframe:
df = pd.DataFrame(np.random.randn(5,5),columns=["A","B","C","D","E"],index=["a","b","c","d","e"])
df
增加列明为“F"的一列,F列中数据为[1,2,3,4,5]:
df[‘F’]=[1,2,3,4,5]
删除第D列:
df.drop([‘C’],axis=1,inplace=True)
注意,axis默认是0.
然后删除第c行:
df.drop([‘c’],axis=0,inplace=True)
也可以用行号表示,例如删除第六和第七行,df.drop([6,7],axis=0,inplace=True)
任意位置增加一行:
一般会要求在特定位置插入一行,这里提供两个方法,一个方法是先在末尾插入一行,然后再插入一列,该列提供了各行的最后顺序索引,按该列排序后删除该列和原来的index,个人感觉这种方法效率太低;
另外一种方法是将表格在插入位置分开,然后将该行插入到第一个子表格的最后,然后再合并两个表格,例如在第四行位置增加一行:
df_1 = df[0:3]
df_2 = df[3:5]
df_1.loc['insert'] = [1] * 5
df = df_1.append(df_2)
df
在任意多个位置插入一条
例如在序号为1和3的位置各插入一条
index_insert = [1,3]
count = 0
for i in index_insert:
df_1 = df[0:i+count]
df_2 = df[i+count:]
df_1.loc['insert_'+str(count)] = [np.nan] * 5
df = df_1.append(df_2)
count += 1
df