Jav*_*ava 5 python csv mysql-python python-2.7 pandas
我试图使用Pandas(Python)将我从.csv文件中提取的数据列插入到MySQL中.
这是我到目前为止的代码.
import pandas as pd
from pandas.io import sql
from sqlalchemy import create_engine
engine = create_engine('mysql://username:password@localhost/dbname')
with engine.connect() as conn, conn.begin():
df = pd.read_csv('File.csv', usercols=['ID', 'START_DATE'], skiprows=skip)
print(df)
df.to_sql(con=con, name='Table1', if_exists='replace', flavor='mysql')
Run Code Online (Sandbox Code Playgroud)
但是,它没有提到表1中的特定列名.
我们如何表达这一点?
我认为你的代码应该是这样的
import pandas as pd
from pandas.io import sql
from sqlalchemy import create_engine
df = pd.read_csv('File.csv', usercols=['ID', 'START_DATE'], skiprows=skip)
print(df)
engine = create_engine('mysql://username:password@localhost/dbname')
with engine.connect() as conn, conn.begin():
df.to_sql('Table1', conn, if_exists='replace')
Run Code Online (Sandbox Code Playgroud)
但是,关于你的问题,除非我对Pandas的理解有误,无论df
目前有哪些列,这些都将被写入mysql表的同名列.
如果您需要不同的列名,则需要重命名DataFrame中的列名
或者使用参数,如上所述,
index:boolean,默认True
Write DataFrame索引作为列.index_label:字符串或序列,默认值无
索引列的列标签.如果给出None(默认值)且index为True,则使用索引名称
归档时间: |
|
查看次数: |
12589 次 |
最近记录: |