小编use*_*348的帖子

导入csv时,Pandas无法识别浮点列

我试图将IMF统计数据读入熊猫数据帧:

import pandas as pd
df = pd.read_table("http://www.imf.org/external/pubs/ft/weo/2013/02/weodata/WEOOct2013all.xls",
                   na_values=['n/a','--'],thousands=',')
Run Code Online (Sandbox Code Playgroud)

除了一个列之外的所有列都有dtype对象:

In [5]: df
Out[5]:
<class 'pandas.core.frame.DataFrame'>
Int64Index: 8318 entries, 0 to 8317
Data columns (total 49 columns):
...
dtypes: float64(1), object(48)
Run Code Online (Sandbox Code Playgroud)

我手动检查了文件,在大多数列中找不到任何非数字值或代码中明确提到的NaN值之一.

我在Wakari.io上的Anaconda 1.5.0上使用Python 2.7.5,numpy 1.7.1,pandas 0.11.0.

python pandas

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

如何在 Excel VBA 中循环创建新字典集合?

我想将包含两列的范围转换为字典集合。例如,如果范围是

一种
1 2
3 4
5 6

然后我想要(使用 JSON 符号)集合[{first:1, second:2}, {first:3, second:4}, {first:5, second:6}]

我尝试了以下方法:

Function Make_Collection(r As Range) As Collection
    Dim out_collection As New Collection
    Dim row As Range
    For Each row In r.Rows
        Dim current_row As New Dictionary
        current_row.Item("first") = row.Cells(1, 1).Value2
        current_row.Item("second") = row.Cells(1, 2).Value2
        out_collection.Add current_row
    Next
    Set Make_Collection = out_collection
End Function
Run Code Online (Sandbox Code Playgroud)

但我得到[{first:5, second:6}, {first:5, second:6}, {first:5, second:6}],这是最后一行的三个副本,而不是每一行的字典。

我怎样才能解决这个问题?

编辑

下面@QHarr 给出了很好的答案。换句话说,我认为我的代码相当于

Function Make_Collection(r As Range) As Collection …
Run Code Online (Sandbox Code Playgroud)

excel vba

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

Excel HSTACK 和 VSTACK 数组函数的 Polyfill

Microsoft 宣布了许多新的数组函数 ( https://techcommunity.microsoft.com/t5/excel-blog/announcing-new-text-and-array-functions/ba-p/3186066 ),包括HSTACKVSTACK,它们组合了多个数组通过水平或垂直“堆叠”它们(毫不奇怪!)将它们合二为一。新功能目前仅对Beta通道的部分用户开放。

我正在构建一个电子表格,其中这些功能非常有用,但它必须由当前频道中的其他用户使用。我有三个“表”(不是 Excel 表,而是表=形状的数据网格),具有相同的列,其中每列都是一个数组公式。我想将它们合并到一个表中,并将整个内容引用为一个数组。

是否可以使用其他数组公式来实现某些HSTACK版本VSTACK

笔记:

  • 我已经可以访问其他稍旧的数组公式,例如SEQUENCE, FILTER, MAP, SCAN, REDUCE, 以及LAMBDA.

  • 我认为与本机实现相比,任何替换公式都会非常低效,但这对我来说不是问题。

  • 就我而言,我已经知道数组将具有兼容的大小(例如HSTACK3 行 x 2 列和 3 行 x 4 列数组),但我事先不知道大小。

  • 纯公式比 VBA UDF 更可取,但后者也可能是一个很好的解决方案。

excel excel-formula array-formulas

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

标签 统计

excel ×2

array-formulas ×1

excel-formula ×1

pandas ×1

python ×1

vba ×1