S_pectator 2022-10-28 17:39 采纳率: 70.6%
浏览 20
已结题

pandas莫名多出一列

pandas今天运行的时候发现了一个很神奇的bug, 目前不懂原理, 希望大家看看

columns_ = [ "输入频阶", "输入频率", "输出频率", "输出频率(全)"]
df_test_1 = pd.DataFrame(np.full((21, 4), ''), columns=columns_)
# 插入数据
df_test_1.loc[0:len(fn_cur) - 1, columns[0]] = fn_cur
df_test_1.loc[0:len(freq_list) - 1, columns[1]] = freq_list
df_test_1.loc[0:len(freq_list_n[0]) - 1, columns[2]] = freq_list_n[0]
df_test_1.loc[0:len(freq_list_n[1]) - 1, columns[3]] = freq_list_n[1]
print(df_test_1)

我当前的新建表格拿来承载新数据, 但是出现了一个意料之外的错误

img

跑完程序发现, 竟然多出来列 在完全没有添加的情况下, 有点不可思议, 然后我用调试模式一步步试了一试, 多出来的列索引是插入列数据来的

img


下面我插入一列数据

img

再看看df, 很不可思议已经多出来一列, 这里fn_cur就是一个简单的列表而已, 并不带这个列值~~

img

所以, 这是怎么产生的呢

  • 写回答

1条回答 默认 最新

  • program_mer 2022-10-28 18:52
    关注

    可能要把

    df_test_1.loc[0:len(fn_cur) - 1, columns[0]] = fn_cur
    

    改成

    df_test_1.loc[0:len(fn_cur) - 1, columns_[0]] = fn_cur
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月5日
  • 已采纳回答 10月28日
  • 创建了问题 10月28日

悬赏问题

  • ¥15 为什么我按照电路图做出的仿真和实物都不能使用
  • ¥15 mars2d在vue3中的引入问题
  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面
  • ¥15 算法题:数的划分,用记忆化DFS做WA求调
  • ¥15 chatglm-6b应用到django项目中,模型加载失败
  • ¥15 CreateBitmapFromWicBitmap内存释放问题。
  • ¥30 win c++ socket
  • ¥15 C# datagridview 栏位进度
  • ¥15 vue3页面el-table页面数据过多
  • ¥100 vue3中融入gRPC-web