【问题标题】:Dataframe writing datatypes into txt file数据框将数据类型写入txt文件
【发布时间】:2019-08-05 14:53:15
【问题描述】:

我在 txt 文件(textfile_A)中有一个列(日期字段),我正在读取该列中的最大日期并将该 max_date 值传递到我的 sql 查询中,最后我试图将我的结果导出到 txt(textfile_B)就像下面的格式一样,我已经尝试了下面的代码,并在 txt 中使用值的数据类型获取我的结果。

我的数据框输出:

0 [74000017966,0,1,1,7694,2019-08-08-01:18]

我的 txt 文件中的结果: 0 (十进制('74000017966'), 0, 1, 1, 7694, datetime.datetime(2019, 8, 3, 1, 8, 58, 155000)

试图在 txt 文件中获取可读格式>

74000015215.0 0 1 1 7984 2019-08-01 22:01

import pyodbc
import numpy as np
import datetime
import time
import pandas as pd


cnxn_informix = pyodbc.connect(dsn='dsn1')

df_1 = pd.read_csv(r'C:\textfile_A', delimiter = "\t")
max_startdate = df_1['startdatetime'].max()
mod_date,un_char = max_startdate.split(".")
cursor = cnxn_informix.cursor()
out = cursor.execute("SELECT * FROM table1 where startdatetime >=   ?" ,mod_date)

df_2 = pd.DataFrame(out)


np.savetxt(r"C:\textfile_B", df_2.values,fmt='%s',delimiter = '\t')

【问题讨论】:

    标签: python pandas python-2.7 pyodbc


    【解决方案1】:

    df_2 = pd.DataFrame(out) 生成一个 DataFrame,其中有一列包含整行所有值的列表。如果您想要一个带有单独列的正确 DataFrame,那么您应该使用类似

    df_2 = pd.DataFrame([list(row) for row in out])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-17
      • 1970-01-01
      相关资源
      最近更新 更多