python如何导入数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python如何导入数据相关的知识,希望对你有一定的参考价值。

参考技术A 通过标准的Python库导入CSV文件:

Python提供了一个标准的类库CSV文件。这个类库中的reader()函数用来导入CSV文件。当CSV文件被读入后,可以利用这些数据生成一个NumPy数组,用来训练算法模型:

如何使用python在mysql中创建表和导入数据

我想用python在MYSQL中创建一个表,然后将数据从csv导入到该表中。我创建表的代码是:

    sqlcmd="CREATE TABLE IF NOT EXISTS PA_TEST_CREDITS(`Identifier` TINYTEXT,`Test_Name` TINYTEXT,`Test_Component_Code` TINYTEXT,`Test_Component` TINYTEXT,`Test_Score` TINYINT,`Course_Prefix` TINYTEXT,`Course_Number` TINYTEXT,`Course_Title` TINYTEXT,`EARN_CREDIT` TINYTEXT,`Earned_Credit_Flag` TINYINT)"
cursor.execute(sqlcmd)
rconn.commit()

这段代码创建了我的表。导入数据我使用过这段代码:

import csv
with open('PA_TEST_CREDITS.csv') as csvfile:
    csv_data=csv.reader(csvfile)
    for row in csv_data:
        cursor.execute("INSERT INTO PA_TEST_CREDITS(Identifier, Test Name, Test Component Code, Test Component, Test Score, Course Prefix, Course Number, Course Title,EARN_CREDIT,Earned Credit Flag) VALUES(%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)", row)

错误是“第1行的列'Test_score'的数据被截断”。

如果你帮助我,将不胜感激。谢谢

答案

尝试将row.split(“,”)作为执行命令的第二个参数,因此您可以传递一个数组而不是一个字符串,因为它可能会尝试对所有参数使用相同的字符串,当它到达第一个非文本列时它会失败。

还要考虑Tinyint只能保存-128到127(如果有符号)或0到255(如果是无符号)的值。

如果列的CSV值更大,则它也会被截断。

如果是这样,请根据您将要使用的值检查所需的正确整数类型:https://dev.mysql.com/doc/refman/5.7/en/integer-types.html

以上是关于python如何导入数据的主要内容,如果未能解决你的问题,请参考以下文章

python如何导入excel文件数据

如何将数据库表中的内容导入到python字典,建了一个表,想把表中的内容放到python的字典中

如何将SalesForce数据导入Python Panda数据帧

如何使用python在mysql中创建表和导入数据

如何编写python程序将csv数据文件导入关系数据库而不插入重复条目

pytorch如何导入ctc库