Pandas dataframfe TypeError:使用 int 索引是否有问题?



对于下一个代码:

1_df = pd.read_csv("1.csv")
2_df = pd.read_csv("2.csv")
3_df = pd.read_csv("3.csv")
GT_df = pd.DataFrame(columns = {'text', 'labelsum', 'label_value'})
row_count = 0
for x in range(1_df.shape[0]):
if 1_df.iloc[x,3] + 2_df.iloc[x,3] + 3_df.iloc[x,3] == 0:
GT_df.loc[row_count,0]=1_df.loc[x,0]
GT_df.iloc[row_count,1]=1_df.iloc[x,2] + 2_df.iloc[x,2] + 3_df.iloc[x,2]
if GT_df.iloc[row_count,1]>1:
GT_df.iloc[row_count,2]=1
else: 
GT_df.iloc[row_count,2]=0
GT_row_count +=1
print(GT_df)

我收到下一个错误:

类型错误:无法使用类"int"的这些索引器 [0] 对类"pandas.core.indexes.base.Index"进行标签索引

任何想法是什么原因?

提前感谢!

ilocloc有细微的区别。如果要使用位置进行索引,请使用iloc,如果要使用列名或条件进行索引,请使用loc

最新更新