项目场景:
备份代码 limu 2.2
import os
import pandas as pd
import torch
p=os.makedirs(os.path.join('..', 'data'), exist_ok=True) #os.path.join()函数用于路径拼接文件路径,可以传入多个路径
#os.makedirs用来创建多层目录,其参数为(name,mode,exist_ok). name:你想创建的目录名; mode:要为目录设置的权限数字模式,默认的模式为0o777(八进制)。
#exist_ok:是否在目录存在时触发异常。如果exist_ok为False(默认值),则在目标目录已存在的情况下触发FileExistsError异常;如果exist_ok为True,则在目标目录已存在的情况下不会触发FileExistsError异常。
#如果创建单层目录则需要使用os.mkdir(path)
#os.mkdir('d:\hello') #创建单层目录,其中字符串使用\进行隔开,数字使用\\进行隔开
#os.rmdir('d:\hello')#删除单层目录,
#os.makedirs('d:\\123\\345') #创建多层目录,其中字符串使用\进行隔开,数字使用\\进行隔开
#os.removedirs('d:\\123\\345') #删除多级目录,但是目录必须为空
data_file = os.path.join('..', 'data', 'house_tiny.csv')
#print('path=',data_file)
with open(data_file, 'w') as f:
f.write('NumRooms,Alley,Price\n') # 列名
f.write('NA,Pave,127500\n') # 每行表示一个数据样本
f.write('2,NA,106000\n')
f.write('4,NA,178100\n')
f.write('NA,NA,140000\n')
data = pd.read_csv(data_file) #pd.read_csv()是指进行数据读取
print(data) #这里最后只能输出文件夹,进而输出文件夹的内容
inputs, outputs = data.iloc[:, 0:2], data.iloc[:, 2] #过位置索引iloc
inputs = inputs.fillna(inputs.mean())#filllna填充空值,
#inputs=inputs.fillna(33)
#print(inputs)
inputs = pd.get_dummies(inputs, dummy_na=True)
print(inputs)
X = torch.tensor(inputs.to_numpy(dtype=float))
y = torch.tensor(outputs.to_numpy(dtype=float)).reshape(4,1)
print(X,'\n',y)
问题描述
1.遇见IndentationError: expected an indented block
表示所在代码行需要缩进
将缩写代码缩进一格即可
2.遇见ModuleNotFoundError: No module named ‘pandas’
按照files——settings——project——python interperter 中搜索pandas点击下载即可。
3.关于创建多层目录hanshu os.makedirs()
在链接http://t.csdn.cn/ciyfy中说得更加清楚明白,
但是在该文章描述时存在部分问题,删除多级目录的函数为os.removedirs()
4.关于os.path.join()的具体讲解
在http://t.csdn.cn/LQbt3中十分清楚
5.pd.read_csv()是指进行数据读取
在http://t.csdn.cn/954nY中十分清楚
6.get_dummies()是指进行数据读取
在http://t.csdn.cn/R8Ll1讲述的十分清楚