小编Kev*_*n M的帖子

Python - 如果两列是NaN,则删除行

这是此问题的扩展,其中OP想要知道如何删除单个列中的值为NaN的行.

我想知道如何删除2(或更多)列中的值都是 NaN的行.使用第二个答案创建的数据框:

In [1]: df = pd.DataFrame(np.random.randn(10,3))

In [2]: df.ix[::2,0] = np.nan; df.ix[::4,1] = np.nan; df.ix[::3,2] = np.nan;

In [3]: df
Out[3]:
          0         1         2
0       NaN       NaN       NaN
1  2.677677 -1.466923 -0.750366
2       NaN  0.798002 -0.906038
3  0.672201  0.964789       NaN
4       NaN       NaN  0.050742
5 -1.250970  0.030561 -2.678622
6       NaN  1.036043       NaN
7  0.049896 -0.308003  0.823295
8       NaN       NaN  0.637482
9 -0.310130  0.078891       NaN
Run Code Online (Sandbox Code Playgroud)

如果我使用drop.na()命令,特别是drop.na(subset=[1,2]),那么它完成一个"或"类型drop并离开:

In[4]: df.dropna(subset=[1,2])
Out[4]: 
          0 …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

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

Excel VBA - 将2D数组的值分配给单元格范围

我正在尝试将大小为183x6的2D数组分配给新工作表,使用数组的值填充A1:G182中的空白单元格.作为参考,我的数组称为"目录",我要填充的空表称为"列表".

我尝试了两种不同的方法,一种是通过显式地将指定的范围分配给数组:

Worksheets("List").Range(Cells(1,1), Cells(UBound(Directory, 1) + 1, UBound(Directory, 2) + 1)) = Directory
Run Code Online (Sandbox Code Playgroud)

并且还尝试遍历数组中的每个条目:

For i = 0 To UBound(Directory, 1)
    For j = 0 To UBound(Directory, 2)
        Worksheets("List").Range(Cells(i + 1, j + 1), Cells(i + 1, j + 1)) = Directory(i,j)
    Next j
Next i
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,我都会收到错误:

Run-time error '1004':
Application-defined or object defined error.
Run Code Online (Sandbox Code Playgroud)

有什么想法会发生什么?我感谢您的帮助.

arrays excel vba excel-vba

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

使用dplyr分组后查找缺少的月份

我有一个数据框,有两列,我正在分组dplyr,一列数月(如数字,例如1到12),以及几个列后面有统计数据(值不重要).一个例子:

ID_1   ID_2   month  st1    st2
1      1      1      0.5    0.2
1      1      2      0.7    0.9
1      1      3      1.1    1.7
1      1      4      2.6    0.8
1      1      5      1.8    1.3
1      1      6      2.1    2.2
1      1      7      0.5    0.2
1      1      8      0.7    0.9
1      1      9      1.1    1.7
1      1      10     2.6    0.8
1      1      11     1.8    1.3
1      1      12     2.1    2.2
1      2      1      0.5    0.2
1      2      2      0.7    0.9
1      2 …
Run Code Online (Sandbox Code Playgroud)

r missing-data dplyr

3
推荐指数
2
解决办法
516
查看次数

PostgreSQL 错误:整数的无效输入语法:“1e+06”

完整的错误信息是:

ERROR: invalid input syntax for integer: "1e+06"
SQL state: 22P02
Context: In PL/R function sample
Run Code Online (Sandbox Code Playgroud)

我正在使用的查询是:

WITH a as
(
 SELECT a.tract_id_alias,
     array_agg(a.pgid ORDER BY a.pgid) as pgids,
     array_agg(a.sample_weight_geo ORDER BY a.pgid) as block_weights
 FROM results_20161109.block_microdata_res_joined a
 WHERE a.tract_id_alias in (66772, 66773, 66785, 66802, 66805, 66806, 66813)
 AND a.bldg_count_res > 0 
 GROUP BY a.tract_id_alias

)
SELECT NULL::INTEGER agent_id, 
     a.tract_id_alias,
     b.year,
    unnest(shared.sample(a.pgids, 
                       b.n_agents, 
                       1 * b.year, 
                       True, 
                       a.block_weights)
                       ) as pgid
FROM a
LEFT JOIN results_20161109.initial_agent_count_by_tract_res_11 b
ON a.tract_id_alias = …
Run Code Online (Sandbox Code Playgroud)

postgresql integer casting function plr

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

标签 统计

arrays ×1

casting ×1

dataframe ×1

dplyr ×1

excel ×1

excel-vba ×1

function ×1

integer ×1

missing-data ×1

pandas ×1

plr ×1

postgresql ×1

python ×1

r ×1

vba ×1