Dataframe列将设置为string而不是integ

2024-05-14 14:29:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将数据帧中的值设置为单独数据帧中的值。当源列是字符串但整数列没有被复制或抛出错误时,这种方法就可以正常工作

RentryDf=pd.DataFrame(index=tportDf.index.values,columns=tradesDf.columns)        
RentryDf.loc[:,'TRADER']=tportDf.loc[:,'TRADER']
RentryDf.loc[:,'CONTRACT_VOL']=tportDf.loc[:,'DELIVERY VOLUME']

第二行设置为trader的字符串名称没有问题,但第三行保持为NaN。我试过这两行代码,只是看看他们是否会工作,甚至这些不工作

RentryDf.loc[:,'CONTRACT_VOL']=11
RentryDf.loc[:,'CONTRACT_VOL'].apply(lambda x: 11)

Tags: columns数据方法字符串dataframeindex错误整数
2条回答

我解决了我的问题,同时试图重新创建它(我想我学会了一个好的策略!)

问题在于我传递的数据帧的减速是columns=tradesDf.columns,而不是columns=tradesDf.columns.values

我很高兴有它固定,但有人知道为什么这会导致DF不设置整数值,但它会设置字符串值

我无法重现这个bug,它对float64和int64都有效

我猜问题可能是索引错误,因为第1行将创建一个DF,所有值都是NaN

相关问题 更多 >

    热门问题