联邦学习PANDAS-CSV,read_csv报错
试着用Pandas 的内置函数read_csv把csv文件改为dataframe
代码
f =open("C://Users//Administrator//Desktop//aligned_4_train_test2020610093614.csv",'r', encoding='UTF-8')
df = pd.read_csv(f,header=0,encoding="UTF-8")
print(df)
输出
Traceback (most recent call last):
File "C:/Users/Administrator/PycharmProjects/Pandas DataFrame/2.py", line 11, in <module>
f = open("C://Users//Administrator//Desktop//aligned_4_train_test2020610093614.csv",'r', encoding='UTF-8')
OSError: [Errno 22] Invalid argument: '\u202aC://Users//Administrator//Desktop//aligned_4_train_test2020610093614.csv'
错误是***OSError: [Errno 22] Invalid argument***
下面找解决办法
可能问题原因一:
1、输入格式错误
a = np.asarray(Image.open(‘E:\火影忍者\1466722360284.jpeg’)
应该修改为:反斜杠(‘E:/火影忍者/1466722360284.jpg’)
或者('E:\\火影忍者\\1466722360284.jpg')
因为在python中\t为换行符如果直接复制黏贴会导致无法识别。
这里我已经把win下的 \ 改为了 / 故不存在这个问题
2、引用的路径过长
F:\图书馆\照片\l庐山\第一天\IMG_20140531_064746.jpg
应该修改为:
(‘E:/火影忍者/1466722360284.jpg’)
或者(‘E://火影忍者//1466722360284.jpg’)
尽量使路径简短,个人觉得目前的路径除了文件名较长,其他的不算长,暂且搁置。
3、错误三:平台的bug,像pycharm,Spyder等,复制黏贴路径都会报错“OSError: [Errno 22] Invalid argument: '\u202a。。。”
修改方式为:手动输入完整路径像:a = np.asarray(Image.open(‘e:\火影忍者\123456789.jpg’)或者(‘e:/火影忍者/1466722360284.jpg’).convert(‘L’)).astype(‘float’)
可能是因为这个原因,调整代码
f = open(r"c:\Users\Administrator\Desktop\aligned_4_train_test2020610093614.csv",'r', encoding='utf-8')
df = pd.read_csv(f,header=0,encoding="UTF-8")
print(df)
成功输出(忽略了很多结果)
"C:\Users\Administrator\PycharmProjects\Pandas DataFrame\venv\Scripts\python.exe" "C:/Users/Administrator/PycharmProjects/Pandas DataFrame/2.py"
id y x0 x1 ... x6 x7 8
4 199 0 0.426758 0.723479 ... 1.077099 1.053586 2.996525 0.961696
.. ... .. ... ... ... ... ... ... ...
564 529 1 -0.583805 -1.613330 ... -0.527672 -0.8
[569 rows x 12 columns]
Process finished with exit code 0
找到问题,问题原因是复制路径时带着特殊字符,所以手动输入c:\Users\ 即可避免’\u202a的问题出现