Python 将混合浮点/整型列的整型元素读取为NaN

Python 将混合浮点/整型列的整型元素读取为NaN,python,pandas,dataframe,Python,Pandas,Dataframe,最初,由于csv末尾有多余的逗号,我的数据出现了问题,但我使用了一个脚本来删除这些逗号。现在我有了标题问题。这里是问题从我的一个数据集开始的地方。我演示了一个数据集的一部分 3474,6951,2011-10-22,4,0,10,5,0,6,0,1,0.38,0.3939,0.66,0.0,1,7,361.0 3475,6952,2011-10-22,4,0,10,6,0,6,0,1,0.36,0.3788,0.71,0.0,1,17,383.0 3476,6953,2011-10-2

最初,由于csv末尾有多余的逗号,我的数据出现了问题,但我使用了一个脚本来删除这些逗号。现在我有了标题问题。这里是问题从我的一个数据集开始的地方。我演示了一个数据集的一部分

3474,6951,2011-10-22,4,0,10,5,0,6,0,1,0.38,0.3939,0.66,0.0,1,7,361.0  
3475,6952,2011-10-22,4,0,10,6,0,6,0,1,0.36,0.3788,0.71,0.0,1,17,383.0  
 3476,6953,2011-10-22,4,0,10,7,0,6,0,1,0.36,0.3636,0.76,0.1045,8,49  
3477,6954,2011-10-22,4,0,10,8,0,6,0,1,0.4,0.4091,0.71,0.0,26,88  
最后一列应该是我回归的目标列。当pandas读取整个数据帧时,它将该列从索引1到3475的元素完美地解释为浮点数。例如df[target][3475]=383.0。但是,i>3475的df[target][i]被列为nan

我曾尝试将列强制为float类型,但没有任何成功。 我还应该注意到,我还有其他数据集存在同样的问题。其中之一是所有目标元素都是int。在这种情况下,pandas将所有目标元素解释为nan

我用来加载这些数据的代码是:

df_train = pd.read_csv(dataset+str("_train")+str(fold)+".csv"). 

令人惊讶的是,您的cvs文件包含不一致的字段

使用此命令,索引从1开始
cat int_float.csv | cut-d“,”-f16,17,18

1,7,361.0 
1,17,383.0  
8,49
26,88
这与pd.read\u csv一致

       14  15  16       17  
0     0.0   1   7   361.0   
1     0.0   1  17  383.0    
2  0.1045   8  49      NaN  
3     0.0  26  88      NaN