[英]How To ' Write To New .CSV File' or "Save As New .CSV File' In python
我有一个 CSV 文件,我想应用一个热编码,然后将新的数据帧(数据集)另存为一个新的 CSV 文件。 但是当新文件被保存时,它只写了 5 Rows dummy 和原始数据集的所有行!
我只想将所有行和列保存在新的 file.csv 中,数据集的最终形状是(237124, 417)
。
我的代码包含:
import numpy as np
import pandas as pd
from sklearn.preprocessing import OneHotEncoder
from sklearn.preprocessing import LabelEncoder
import csv
dataset=pd.read_csv("C:/Users/User/Desktop/data.csv",encoding='cp1252')
dataset.shape
#output: (237124, 37)
dummies = pd.get_dummies(dataset, columns=["name","mark",....... ]).head()
dummies.shape
#output : (5, 380)
dataset = pd.concat([dataset, dummies], axis=1)
dataset.shape
#output: (237124, 417)
# i want this shape(original+dummies)
dataset.to_csv('OneHotEncodnig.csv', index=False)
你在这一行调用df.head()
:
dummies = pd.get_dummies(dataset, columns=["name","mark",....... ]).head()
这就是为什么你只能得到 5 个虚拟行。 删除.head()
并获得所有行。
head()
函数默认只返回 5 行。 请在没有head()
函数的情况下应用get_dummies()
import numpy as np
import pandas as pd
from sklearn.preprocessing import OneHotEncoder
from sklearn.preprocessing import LabelEncoder
import csv
dataset=pd.read_csv("C:/Users/User/Desktop/data.csv",encoding='cp1252')
dataset.shape
#output: (237124, 37)
dummies = pd.get_dummies(dataset, columns=["name","mark",....... ])
dummies.shape
#output : (5, 380)
dataset = pd.concat([dataset, dummies], axis=1)
dataset.shape
#output: (237124, 417)
# i want this shape(original+dummies)
dataset.to_csv('OneHotEncodnig.csv', index=False)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.