小编ktd*_*drv的帖子

使用Python中的xlrd将数字Excel数据作为文本读取

我正在尝试使用xlrd读取Excel文件,我想知道是否有办法忽略Excel文件中使用的单元格格式,并只是将所有数据导入为文本?

这是我正在使用的代码:

import xlrd

xls_file = 'xltest.xls'
xls_workbook = xlrd.open_workbook(xls_file)
xls_sheet = xls_workbook.sheet_by_index(0)

raw_data = [['']*xls_sheet.ncols for _ in range(xls_sheet.nrows)]
raw_str = ''
feild_delim = ','
text_delim = '"'

for rnum in range(xls_sheet.nrows):
    for cnum in range(xls_sheet.ncols):
        raw_data[rnum][cnum] = str(xls_sheet.cell(rnum,cnum).value)

for rnum in range(len(raw_data)):
    for cnum in range(len(raw_data[rnum])):
        if (cnum == len(raw_data[rnum]) - 1):
            feild_delim = '\n'
        else:
            feild_delim = ','
        raw_str += text_delim + raw_data[rnum][cnum] + text_delim + feild_delim

final_csv = open('FINAL.csv', 'w')
final_csv.write(raw_str)
final_csv.close()
Run Code Online (Sandbox Code Playgroud)

此代码是有效的,但是某些字段(例如邮政编码)作为数字导入,因此它们具有十进制零后缀.例如,Excel文件中是否有"79854"的邮政编码,它将导入为"79854.0".

我试过在这个xlrd规范中找到一个解决方案,但是没有成功.

python csv excel xls xlrd

17
推荐指数
1
解决办法
3万
查看次数

在非常特定的约束下生成随机数

我遇到了以下编程问题.我需要生成n (a, b)元组,其中所有的总和a是给定的,A并且所有b的总和是给定的,B并且对于每个元组,比率a / b在范围内(c_min, c_max).A / B也在同一范围内.我也试图确保除了约束引入的结果之外,结果中没有偏差,并且a / b值在给定范围内或多或少均匀分布.

一些澄清和元约束:

  • A,B,c_min,和c_max给出.
  • 比率A / B在该(c_min, c_max)范围内.如果问题是在给定其他约束的情况下得到解决方案,则必须如此.
  • a和b >0是非整数.

我试图在Python中实现这一点,但我们非常感谢任何语言(包括英语)的想法.

python random algorithm

12
推荐指数
1
解决办法
2135
查看次数

使用NumPy/SciPy进行向量值函数插值

有没有办法使用NumPy/SciPy插入向量值函数?

有很多产品可用于标量值函数,我想我可以使用其中一个来分别估计向量的每个组件,但有没有办法更有效地做到这一点?

详细说明,我有一个函数f(x) = V,其中x是标量,V是一个向量.我也有一个xs和他们相应的集合Vs.我想用它来插值和估计V一个任意的x.

python interpolation numpy scipy

8
推荐指数
1
解决办法
3003
查看次数

大数据集上的随机森林

我在R中有一个大型数据集(1M +行乘6列),我想用它来训练随机森林(使用randomForest包)以进行回归.不幸的是,我Error in matrix(0, n, n) : too many elements specified在尝试一次完成所有事情时遇到错误,并且在运行数据子集时无法分配足够的内存类型错误 - 低至10,000左右的观察.

看到我没有机会在我的机器上添加更多内存和随机森林非常适合我想要建模的过程类型,我真的很想让这个工作.

任何建议或解决方法的想法都非常感谢.

r machine-learning random-forest

6
推荐指数
1
解决办法
2万
查看次数

MS Analysis Services用于Python的OLAP API

我正在寻找一种方法来连接到MS Analysis Services OLAP多维数据集,运行MDX查询,并将结果拉入Python.换句话说,正是Excel所做的.Python中是否有解决方案让我这样做?

有类似问题的人指向Django的ORM.尽管我喜欢这个框架,但这并不是我想要的.我也不是在寻找一种拉行和聚合它们的方法 - 这就是Analysis Services首先要做的事情.

想法?谢谢.

python database olap

5
推荐指数
2
解决办法
9474
查看次数

Spark任务停留在RUNNING上

我正在尝试在我的Yarn集群上运行Spark ML管道(从JDBC加载一些数据,运行一些变换器,训练模型),但每次运行它时,我的执行器中有一对 - 有时是一个,有时是3或4个卡在运行他们的第一个任务集(对于他们的3个核心中的每一个都是3个任务),而其余任务正常运行,一次检查3个任务.

在UI中,您会看到以下内容: Spark web UI截图

到目前为止我观察到的一些事情:

  • 当我将执行程序设置为每个使用1个核心spark.executor.cores(即一次运行1个任务)时,问题不会发生;
  • 卡住的执行器似乎总是那些为了运行任务而必须将一些分区拖到他们面前的执行器;
  • 卡住的任务最终会被另一个实例成功地推测性地执行;
  • 有时,单个任务会卡在执行程序中,否则正常,其他2个核心将保持正常工作;
  • 卡住的执行程序实例看起来一切正常:CPU大约100%,有足够的内存备用,JVM进程处于活动状态,Spark或Yarn都没有记录任何异常情况,他们仍然可以从驱动程序接收指令,例如作为"放弃这个任务,其他人已经推测性地执行了它" - 但是,出于某种原因,他们并没有放弃它 ;
  • 那些执行者永远不会被司机杀死,所以我想他们继续发送他们的心跳就好了;

关于可能导致这个或我应该尝试什么的任何想法?

apache-spark

4
推荐指数
1
解决办法
3685
查看次数

Matlab/Octave添加,丢失精度数字

在Matlab/octave中,当我添加两个数字时,我丢失了一些数字.

>>> 23.0 + 0.65850
ans =  23.659
Run Code Online (Sandbox Code Playgroud)

我如何找到双倍的23.65850

matlab octave

3
推荐指数
1
解决办法
827
查看次数

在 Pyglet 中设置单个像素

有没有办法在 Pyglet 中为图像数据设置单个像素值?

我想也可以通过将OpenGL渲染模式设置为点来完成,所以如果有人对此有见解,也请分享。

python pyglet

1
推荐指数
1
解决办法
2940
查看次数

按行索引拆分Spark数据帧

我想按行顺序拆分数据框.如果有100行,则所需的分割成4个相等的数据帧应该有指数0-24,25-49,50-74,和75-99,分别.

唯一可用的预定义功能是randomSplit.但是randomSplit在拆分之前随机化数据.我想到的另一种方法是使用count缩减操作找到数据计数,然后继续使用数据提取 take但是它非常昂贵.在保持相同顺序的同时,还有其他方法可以实现上述目标吗?

python apache-spark pyspark

1
推荐指数
1
解决办法
1497
查看次数