小编abh*_*hy3的帖子

将top_n的结果与dplyr中的"其他"类别组合

我有一个数据框dat1

   Country Count
1      AUS     1
2       NZ     2
3       NZ     1
4      USA     3
5      AUS     1
6      IND     2
7      AUS     4
8      USA     2
9      JPN     5
10      CN     2
Run Code Online (Sandbox Code Playgroud)

首先,我想对每个"国家"加上"计数".然后,每个国家的前三个总计数应该与另一行"其他"相结合,这是不属于前三名的国家的总和.

因此,预期结果将是:

    Country Count
1     AUS     6
2     JPN     5
3     USA     5
4     Others  7
Run Code Online (Sandbox Code Playgroud)

我已经尝试了下面的代码,但无法弄清楚如何放置"其他"行.

dat1 %>%
    group_by(Country) %>%
    summarise(Count = sum(Count)) %>%
    arrange(desc(Count)) %>%
    top_n(3)
Run Code Online (Sandbox Code Playgroud)

此代码目前提供:

    Country Count
1     AUS     6
2     JPN     5
3     USA     5
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

dat1 <- structure(list(Country = structure(c(1L, …
Run Code Online (Sandbox Code Playgroud)

r dplyr

10
推荐指数
3
解决办法
2243
查看次数

从 azure 数据块中删除 azure sql 数据库行

我在 Azure SQL 数据库中有一个表,我想根据某些条件从 Azure Databricks 中删除选定的行或整个表。目前我正在使用JDBC的truncate属性来截断整个表而不删除它,然后用新的数据帧重写它。

df.write \
     .option('user', jdbcUsername) \
     .option('password', jdbcPassword) \
     .jdbc('<connection_string>', '<table_name>', mode = 'overwrite', properties = {'truncate' : 'true'} )
Run Code Online (Sandbox Code Playgroud)

但是以后我不想每次都截断和覆盖整个表,而是使用 delete 命令。我也无法使用下推查询来实现这一点。对此的任何帮助将不胜感激。

pyspark pyspark-sql azure-sql-database databricks azure-databricks

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