Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将xlwt生成的excel文件导入到SAS中

将xlwt生成的excel文件导入到SAS中
EN

Stack Overflow用户
提问于 2013-03-08 10:21:23
回答 1查看 527关注 0票数 1

我使用xlwt将一堆csv文件转换成excel文件。之后,我需要导入这些excel文件到SAS (统计软件)。

在第一次尝试时,SAS抛出一个错误,指出文件格式无效。

但是,当我用MS Excel打开任何生成的文件并关闭时,没有做任何更改,也没有保存,文件成功地导入到SAS中。

我发现MS Excel更改了文件头,添加了当前用户名,并更新了文件的修改日期。

我想知道在保存之前是否可以修改excel文件的二进制头。

更新:我使用的是xlwt版本0.7.4,Python 2.7.3,SAS 9.3,Excel 2010,Windows 7 32位。

这是我的代码的一部分,我在其中将CSV转换为Excel:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wb = xlwt.Workbook(encoding='latin-1')
ws = wb.add_sheet('Sheet1')
sourceCSV = csv.reader(open(files, 'rb'), delimiter=";")
for rowi, row in enumerate(sourceCSV):
    for coli, value in enumerate(row):
        ws.write(rowi, coli, value)
wb.save(xls_file)

以下是与SAS导入功能一起使用的选项:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
...
DBMS=EXCEL REPLACE;
RANGE="Sheet1$";
GETNAMES=YES;
MIXED=NO;
SCANTEXT=YES;
USEDATE=YES;
SCANTIME=YES;
...

这是SAS产生的错误:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ERROR: Connect: External table is not in expected format. 
ERROR: Error in the LIBNAME statement.
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-08 16:15:21

如果在Excel中打开工作簿并保存它可以让SAS正确地导入它,这(对我来说)就表明xlxt中有一些缺陷(我对这个过程一无所知)。将Excel文件导入SAS是一个复杂的主题,因为有许多不同类型的Excel工作簿。

直接读取CSV文件并跳过向Excel的转换会容易得多。当您使用SAS PROC IMPORT读取CSV文件时,SAS会检查文件的前几行,以确定列类型。默认情况下,仅查看文件中的前20行,但您可以使用SASGUESSINGROWSGUESSINGROWS语句进行更改:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
proc import datafile="C:\temp\test.csv"
     out=mydataset
     dbms=csv
     replace;
     getnames=yes;  /* Uses first row in CSV for column names */
     guessingrows=32767; 
run;

以上是SAS9.2版的GUESSINGROWS的最大值;如果您使用的是9.3版,则最大值已增加到2,147,483,647。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15291693

复制
相关文章
将excel文件导入到数据库
参考:http://blog.csdn.net/jayxujia123/article/details/13684313
保持热爱奔赴山海
2019/09/18
4.5K0
将excel文件导入到数据库
django使用xlwt导出excel文件
这里只是mark一下导出的方法,并没有做什么REST处理和异常处理。 维护统一的style样式,可以使导出的数据更加美观。 def export_excel(request): # 设置HttpResponse的类型 response = HttpResponse(content_type='application/vnd.ms-excel') response['Content-Disposition'] = 'attachment;filename=user.xls'
用户1225216
2018/03/05
1.3K0
DataTable导入到Excel文件
public static bool DataTableToExcel(System.Data.DataTable dt, string fileName, bool showFileDialog=false)         {             if (showFileDialog)             {                 SaveFileDialog saveFileDialog = new SaveFileDialog();                 saveFile
跟着阿笨一起玩NET
2018/09/18
1.5K0
Python xlwt数据保存到 Excel中以及xlrd读取excel文件画图
值得注意的是:文件格式要保存为xls【excel数据存储另存为xls比较稳妥】,直接改后缀名可能还会报错,报错如下:
汀丶人工智能
2022/12/21
1.6K0
Python xlwt数据保存到 Excel中以及xlrd读取excel文件画图
使用 VBA 将 Excel 数据导入到 Word 表格中
现要求将一个 Excel 数据表中的每行数据导成一个 Word 文档,即有多少行数据就生成多少个 Word 文档,Excel 每列与 Word 文档中的表格项一一对应。
mzlogin
2020/04/16
4.8K0
Python - xlrd,xlwt模块操作excel文件
Python输出的数据用Excel文件查看往往更直观,而且Excel中的数据也常常需要读取到Python程序中。Python的xlrd和xlwt模块便是为此而生。文本记录这两个模块的使用方法。 测试用例 使用read_test.xlsx作为读取excel的测试文件。其中两个工作表,分别为: 模块安装 用pip可以方便地安装 pip install xlrd pip install xlwt xlrd 读取excel文件(xls,xlsx) import xlrd ## 读取e
为为为什么
2022/08/04
5270
Python - xlrd,xlwt模块操作excel文件
使用 VBA 将 Excel 数据导入到 Word 表格中
现要求将一个 Excel 数据表中的每行数据导成一个 Word 文档,即有多少行数据就生成多少个 Word 文档,Excel 每列与 Word 文档中的表格项一一对应。
零式的天空
2022/03/24
4.7K0
如何使用免费控件将Word表格中的数据导入到Excel中
我通常使用MS Excel来存储和处理大量数据,但有时候经常会碰到一个问题—我需要的数据存储在word表格中,而不是在Excel中,这样处理起来非常麻烦,尤其是在数据比较庞大的时候,
全栈程序员站长
2022/07/05
4.4K0
如何使用免费控件将Word表格中的数据导入到Excel中
Python使用xlwt和xlrd读写excel文件
xlwt和xlrd是两个相互配套的模块,在Python中,用于将数据写入Excel文件和读取Excel文件的数据。
Python碎片公众号
2021/02/26
1.5K0
Python使用xlwt和xlrd读写excel文件
通过xlrd和xlwt模块读写excel文件
xlrd模块用于读取excel文件,xlwt模块用于写入excel文件,二者搭配,可以灵活的操作excel文件。相比openpyxl模块,xlrd和xlwt可以操作不仅可以操作后缀为xlsx的文件,也可以操作后缀为xls的文件。
生信修炼手册
2020/11/25
6780
.NET Core使用NPOI将Excel中的数据批量导入到MySQL
前言:   在之前的几篇博客中写过.NET Core使用NPOI导出Word和Excel的文章,今天把同样我们日常开发中比较常用的使用Excel导入数据到MySQL数据库中的文章给安排上。与此同时还把NPOI-ExportWordAndExcel-ImportExcelData这个开源项目升级到了.NET Core 3.1版本(注意之前一直是在.NET Core2.2的基础上开发的),升级的过程中遇到了不少坑,在项目中会有一些注释关于升级到.NET Core3.1需要修改的代码这里就不做详细的讲解了可以Cl
追逐时光者
2020/09/16
4.8K0
.NET Core使用NPOI将Excel中的数据批量导入到MySQL
laravel5.4将excel表格中的信息导入到数据库中
本功能是借助 Maatwebsite\Excel 这个扩展包完成的,此扩展包的安装过程请参考上篇博文:http://www.cnblogs.com/zhuchenglin/p/7122946.html
lin_zone
2018/08/15
2.8K0
使用xlwt和xlutils写数据到excel文件
xlwt是一个能将数据和样式信息写入excel表格的库。不过需要注意的是,它只可以通过创建一个新的工作薄写入。
JQ实验室
2022/05/28
5940
Python将数据库数据导入到EXCEL
      每次给运营导数据的时候,如果不用工具的话,就是直接生成.csv格式的文件,这样的文件不支持'sheet',每次还有手工进行,相当的不科学,今天试试Python生成excel文件。
py3study
2020/01/08
2.7K0
从Word文件抽取数据导入到Excel文件
pip3 install python-docx; pip3 install xlwl; 从docx抽取数据 import docx def get_docx(): from docx import Document path = "info.docx" document = Document(path) Lines = [] for paragraph in document.paragraphs: Lines.append(paragraph.text) return
Spaceack
2020/11/04
1.7K0
Django通过xlwt用文件流的方式下载excel文档
    通过文件流的方式直接在浏览器下载可以节省服务器的硬盘空间,也比较方便快捷 import xlwtimport StringIOimport web urls = ( '/rim_request','rim_request', '/rim_export','rim_export', '/(.*)', 'index' ) class rim_export: #render = web.template.render('adsl') def GET(self): web.header('Co
用户9127725
2022/08/08
7370
将stdout、stderr导入到指定文件
在编写程序中,经常用到stdout、stderr作为输出,通常stdout用于输出程序运行正常时的信息,stderr用于输出程序出错时的信息。我们可以通过一些命令将stdout、stderr在屏幕上的输出导入到指定的文件。   1、准备工作   带有stdout、stderr输出的test.cpp   /*   ** test.cpp   */   #include <iostream>   #include <stdlib.h>   using namespace std;   int main(int argc, char *argv[])   {    cout << "This is stdout...." << endl;    cerr << "This is stderr..." << endl;    return 0;   }   用g++编译该文件:   $ g++ test.cpp -o test   执行 test ,屏幕上打印stdout、stderr的信息   This is stdout....   This is stderr...   2、导入stdout的结果到指定文件    在csh、sh下,使用”>”将stdout的结果导入到指定文件,本例中执行   ./test > out.log    查看out.log,可以看到里面写有“This is stdout....”。   使用”>>”将stdout的结果追加到指定文件中,本例中执行   ./test >> out.log    查看out.log,可以看到增加了一行“This is stdout....”。   3、导入stderr到指定文件   在 csh 中,用 ">" 将 stdout 导向,用 ">&" 则能将 stdout 与 stderr 一起导向。可是不能只单独把 stderr 转向。最好的方法是   (./test > out.log) >& err.log   以上的命令会开一个 subshell 执行 "./test";而这个 subshell 的 stdout 则被转向到out.log,同时这个 subshell 的 stdout 和 stderr 则都被转向到 err.log,但是因为 stdout 已经先被转向了, 所以 stderr 就会被转到 err.log 了。   如果你只是单纯的不想把 stdout 做转向,那么就用 sh 来帮你吧。   sh -c './test 2> err.log'   如果同时需要得到stdout、stderr的信息,也很简单,直接使用>&就可以了。   ./test >& err.log(王朝网络 wangchao.net.cn)
阳光岛主
2019/02/19
1.6K0
将文件导入到数据库中_将csv文件导入mysql数据库
我一开始是准备还原数据库的,结果出现了如下问题。因为它并不是备份文件,所以我们无法进行还原。
全栈程序员站长
2022/11/10
14.4K0
将文件导入到数据库中_将csv文件导入mysql数据库
将XML导入到对象中
注意:使用的任何XML文档的XML声明都应该指明该文档的字符编码,并且文档应该按照声明的方式进行编码。如果未声明字符编码, IRIS将使用前面的“输入和输出的字符编码”中描述的默认值。如果这些默认值不正确,请修改XML声明,使其指定实际使用的字符集。
用户7741497
2022/07/04
1.6K0
bs4--xlwt存入excel
先写一个简单的python程序测试一下,创建一个名为excelwrite.py文件,代码如下:
py3study
2018/08/03
7500

相似问题

将XLWT转换为excel文件

16

如何用getname= no将excel导入到sas?

13

使用xlwt将列表列表写入excel文件

10

xlwt -如何将分页添加到Excel文件中?

21

如何通过xlwt获取Excel文件中的行数

23
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文