SMS=pd.read_csv('./data/SMSSpamCollection', sep='\t',header=None)
SMS
一、X是DataFrame时候 X[:,1]与X[1]区别
1、导出数据data是DataFrame时候
1、SMS
故SMS相关信息:
type(SMS)=pandas.core.frame.DataFrame
SMS.shape=(5572, 2)
2、SMS[0]
故SMS[0]相关信息
# type(SMS[0])=pandas.core.series.Series
# SMS[0].shape=(5572,)
SMS[0]
结论:虽然SMS[0]与sms[:,0]的shape都是(5572,)
但是文本处理(词频转换)用SMS[0]
pandas.core.series.Series格式
2、将SMS转换成数组sms=np.array(SMS)
sms为二维数组(5572,2)
sms[:,0]sms[:,1]为一维数组(5572,)
1、sms
故sms相关信息 :
# sms.shape=(5572, 2)
# type(sms)=numpy.ndarray数组
sms=np.array(SMS)
sms
2、sms[:,0]
故sms[:,0]相关信息 :
# sms[:,0].shape=(5572,)
# type(sms[:,0])=numpy.ndarray数组
故sms[:,1]相关信息 :
# sms[:,1].shape=(5572,)
# type(sms[:,1])=numpy.ndarray数组
sms[:,0]
sms[:,1]
二、data是DataFrame时候data["column_name"]&data[["column_name"]]区别
1)tip=sns.load_dataset('tips')
1、tip
# tip.shape=(244, 7)
# type(tip)=pandas.core.frame.DataFrame
2、tip["total_bill"]
# type(tip["total_bill"])=pandas.core.series.Series
# tip["total_bill"].shape=(244,)
3、tip[["total_bill"]]
# tip[["total_bill"]].shape=(244, 1)
# type(tip[["total_bill"]])=pandas.core.frame.DataFrame
2)结论:
train=tip[["total_bill"]]
训练时使用train=tip[["total_bill"]] 训练使用二维
三、y为二维数组y[:,0]与y[:,0][::4]
1、y
# y.shape=(200, 1)
# type(y)=numpy.ndarray
2、y[:,0]
# y[:,0].shape=(200,)
# type(y[:,0])=numpy.ndarray
3、y[:,0][::4]
# y[:,0][::4].shape=(50,) 步长4
type(y[:,0][::4]])=numpy.ndarray
4、结论
x=(200,)-> x=(200,1)
只需要x-.>x=x.reshape(-1,1)
训练时候要用 x=(200,1)这种格式