如何从CSV文件创建MySQL数据库

我想创建一个数据库,因为我的所有数据都是以CSV格式存在的。我的CSV文件有160列和15行。由于列数较多,手动输入列名非常困难。我希望能够从CSV文件中获取列名并存储在一个变量中。我已经完成了这一步,现在列名已经存储在变量中。但是,我无法将这些值分配给数据库的列。

def parseCSV(filePath):      # CVS Column Names      data = pd.read_csv(filePath)      column = data.columns      # Use Pandas to parse the CSV file      csvData = pd.read_csv(filePath,names=column, header=None)      # Loop through the Rows    #   for i,row in csvData.iterrows():    #          sql = "INSERT INTO addresses (first_name, last_name, address, street, state, zip) VALUES (%s, %s, %s, %s, %s, %s)"    #          value = (row['first_name'],row['last_name'],row['address'],row['street'],row['state'],str(row['zip']))    #          mycursor.execute(sql, value, if_exists='append')    #          mydb.commit()    #          print(i,row['first_name'],row['last_name'],row['address'],row['street'],row['state'],row['zip'])

我注释掉了那些硬编码的行。我希望这些列名来自CSV文件,而不是手动添加。


回答:

您可以直接将数据框保存为SQL表,使用df.to_sql,示例如下:

def parseCSV(filePath):      data = pd.read_csv(filePath)      data.to_sql('addresses', 'yoursqlconnection')

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注