1.cant convert the string to 'float[1,0]'
有的时候,我们有把【1,0】数组存进pandas里的需求,合理!
但是我们可能遇到这种情况。比如分类问题,比如mnist手写体识别。
x=tf.placeholder(tf.float32,[None,INPUT_NODE])
y_=tf.placeholder(tf.float32,[None,OUTPUT_NODE])
我们希望输入的是float类型,但是一旦我们把【1,0】以类似这样的形式存入:
df2.fakelab1.loc[i]=[1,0]
最后,就会出错:cant convert the string to 'float[1,0]'
一查dataframe里的属性,发现对应的fakelab1的属性是object,不是float或者int。
解决方案:
有多少数据,就存进几列里。
df2= pd.DataFrame(columns=['fakelab1','fakelab2']) #新建具有列名的空的dataframe
df2.fakelab1.loc[i]=1;
df2.fakelab2.loc[i]=0;
效果如下:
用print(dt.info())查看数据格式信息,发现已经不是object格式了
然后调用:
dataOutTr=pd.read_csv('./1.csv',usecols=[i for i in range(36,38)]) #fakelab1,fakelab2分别在36,37列。