小编use*_*360的帖子

计算r中字符串中的位数

我有一个字符串列:

name
aldrinas63_rios200_2001
sa_c.fr.1234
Run Code Online (Sandbox Code Playgroud)

我想计算每个单元格中的位数:我使用了以下代码:

str_count(data$name, '\\d+')
Run Code Online (Sandbox Code Playgroud)

但我得到的输出为:

Name                    output_I_get
aldrinas63_rios200_2001  3
sa_c.fr.1234             1
Run Code Online (Sandbox Code Playgroud)

但我想要的输出如下:

name                     output
aldrinas63_rios200_2001   9
sa_c.fr.1234              4
Run Code Online (Sandbox Code Playgroud)

在这方面的任何帮助将受到高度赞赏!

r

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

将字符串转换为json字符串并在R中解析

我有一个数据,其中一列为 json 字符串:

reservation  reasons
1592         [{"name"=>"jorge", "value"=>"MX"}, {"name"=>"Billing phone number", "value"=>"1123"}, {"name"=>"BillingCountry", "value"=>"USA"}]
1597         [{"name"=>"BillingAddress_Country", "value"=>"IN"}, {"name"=>"Billing phone number country code", "value"=>"IN"}, {"name"=>"Latest amount", "value"=>"583000000"}]
Run Code Online (Sandbox Code Playgroud)

我想按如下方式解析该列:

reservation   name                                value
1592          jorge                                mx
1592          Billing phone number                 1123
1592          BillingCountry                       USA
1597          BillingAddress_Country               IN
1597          Billing phone number country code    IN
1597          Latest amount                        583000000
Run Code Online (Sandbox Code Playgroud)

我在 R 中使用 jsonlite。我的代码中出现以下错误:

data<-read.csv("data.csv")
json<-data$reasons
mydf <- fromJSON(json)
Error: Argument 'txt' must be a JSON string, URL or file.
Run Code Online (Sandbox Code Playgroud)

谁能告诉我我在哪里犯了错误?我需要做哪些修改?提前谢谢了!

r

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

R中的路线产生的总收入

我有一个数据集,其来源(“ from”),目的地(“ to”)和价格如下:

from    to  price
A       B   28109
A       D   2356
A       E   4216
B       A   445789
B       D   123
D       A   45674
D       B   1979
Run Code Online (Sandbox Code Playgroud)

我也想考虑返回路线的总价。例如,A-B由以下数据组成:

from    to  price
  A     B   28109
  B     A   445789
Run Code Online (Sandbox Code Playgroud)

然后,取价格的总和(28109 + 445789)。输出将如下所示:

route   total_price
A - B   473898
A - D   48030
A - E   4216
B - D   2102
Run Code Online (Sandbox Code Playgroud)

我当时想运行一个for循环,但是我的数据量很大(800k行)。任何帮助将不胜感激。非常感谢。

r permutation

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

Pyspark-如何在“ 4小时”内分组汇总窗口

我有一个数据集,如下所示:

id  email   Date_of_purchase    time_of_purchase
1   abc@gmail.com   11/10/18    12:10 PM
2   abc@gmail.com   11/10/18    02:11 PM
3   abc@gmail.com   11/10/18    03:14 PM
4   abc@gmail.com   11/11/18    06:16 AM
5   abc@gmail.com   11/11/18    09:10 AM
6   def@gmail.com   11/10/18    12:17 PM
7   def@gmail.com   11/10/18    03:24 PM
8   def@gmail.com   11/10/18    08:16 PM
9   def@gmail.com   11/10/18    09:13 PM
10  def@gmail.com   11/11/18    12:01 AM
Run Code Online (Sandbox Code Playgroud)

我想计算4小时内每个电子邮件ID进行的交易数量。例如,电子邮件ID:abc@gmail.com从18/11/10 12.10 PM到11/10/18 4.10 PM进行了3笔交易,从11/11/18 6.16 AM到11/11/18进行了2笔交易。上午10.16。电子邮件ID:def@gmail.com从11/10/18 12.17 PM到11/10/18 4.17 PM进行了2笔交易,从11/10/18 8.16 PM到11/11/18 12.16 AM进行了3笔交易。

我想要的输出是:

 email          hour_interval                           purchase_in_4_hours
abc@gmail.com   [11/10/18 12.10 PM to 11/10/18 …
Run Code Online (Sandbox Code Playgroud)

python apache-spark pyspark

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

获取错误以在Python中规范化嵌套列表

我有一个带字典的嵌套列表.以下只是列表的第一个元素

    {'id': 'abcde',
     'authorization': None,
     'operation_type': 'xx',
     'method': 'card',
     'transaction_type': 'asd',
     'card': {'type': 'dd',
      'brand': 'vv',
      'address': {'line1': 'xxxxxxx',
       'line2': '',
       'line3': '',
       'state': 'xx',
       'city': 'xxx',
       'postal_code': '12345',
       'country_code': 'xx'},
      'card_number': '123456XXXXXX7890',
      'holder_name': 'name user,
      'expiration_year': '20',
      'expiration_month': '02',
      'allows_charges': True,
      'allows_payouts': True,
      'bank_name': 'abc bank',
      'bank_code': '000'},
     'status': 'fgh',
     'conciliated': True,
     'creation_date': '2018-09-23T23:58:17-05:00',
     'operation_date': '2018-09-23T23:58:17-05:00',
     'description': 'asdmdefdsa',
     'error_message': 'sdaskjflj',
     'order_id': 'ashdgjasdfhk',
     'amount': 418.0,
     'customer': {'name': 'abc',
      'last_name': 'xyz',
      'email': 'abcdef@hotmail.com',
      'phone_number': '12345678',
      'address': None,
      'creation_date': '2018-09-23T23:58:18-05:00',
      'external_id': None, …
Run Code Online (Sandbox Code Playgroud)

dictionary dataframe python-3.x pandas

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

如何在R中加载大数据?

我有1600万条客户记录,超过100列.我有兴趣在R中加载完整的数据,并希望在其上运行我的R代码.

我使用以下内容在R中加载数据:

read.table("D:/data.txt",header = TRUE, sep = "þ",
           skipNul = TRUE,strip.white = TRUE,
           fill=TRUE, check.names = TRUE,na.string="NA",quote="")
Run Code Online (Sandbox Code Playgroud)

但是我的系统挂了.

是否有任何有效且有效的方式来读取大数据?

r bigdata

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

如何从 github python 安装“sparse_dot_topn”

我想sparse_dot_topn从github安装在python中。但我不知道该怎么做。我做到了:pip3 install sparse_dot_topn但它失败了。我sparse_dot_topn在 github 中看到并尝试在 jupyter notebook 中运行代码,但我无法成功。也许我做错了什么。你能帮我sparse_dot_topn从github安装的步骤吗?提前谢谢了!

python github sparse-matrix

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

Pyspark - 将多列数据组合成跨行分布的单列

我有一个多列的 pyspark 数据框,如下所示:

name    col1    col2    col3
A        1        6       7
B        2        7       6
C        3        8       5
D        4        9       4
E        5        8       3
Run Code Online (Sandbox Code Playgroud)

我想通过将 col1、col2、col3 的列名和列值组合成两个新列,例如 new_col 和 new_col_val,跨行创建一个新的数据框:

在此处输入图片说明

我使用以下代码在 R 中做了同样的事情:

df1 <- gather(df,new_col,new_col_val,-name)
Run Code Online (Sandbox Code Playgroud)

我想创建 3 个单独的数据帧,它们将包含原始数据帧中的每一列,然后将它们附加在一起,但我的数据有超过 2500k 行和大约 60 列。创建多个数据框将是最糟糕的主意。谁能告诉我如何在 pyspark 中执行此操作?

python apache-spark pyspark

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

使用来自第二个data.table的值填充NA值的data.table行

我在R中使用内置数据集"mtcars".我已将其转换为data.table格式.我有另一个NA值的data.table,m1.m1的尺寸与mtcars的尺寸相同,比如尺寸为32X11.我的目标是在m1中保存一些mtcars行

(即m1[c(1,11,13),]<-mtcars[c(1,11,13),])

使用data.table.但每当我试图这样做时,它为1,11,13行m1赋予TRUE/FALSE值.如何在m1中保存1,11,13行mtcars?(注意:我只想使用data.table格式).任何帮助将不胜感激.提前致谢!!

r data.table

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

使用 Pandas 在 Python 中为每个客户查找两个最近的日期

我有一个 Pandas 数据框,其中包含每个客户的购买日期。我想找出每个唯一客户的最近购买日期和第二个最近购买日期。这是我的数据框:

   name    date
    ab1     6/1/18
    ab1     6/2/18
    ab1     6/3/18
    ab1     6/4/18
    ab2     6/8/18
    ab2     6/9/18
    ab3     6/23/18
Run Code Online (Sandbox Code Playgroud)

我期待以下输出:

name    second most recent date        most recent date
ab1      6/3/18                         6/4/18
ab2      6/8/18                         6/9/18
ab3      6/23/18                        6/23/18
Run Code Online (Sandbox Code Playgroud)

我知道data['date'].max()可以给出最近的购买日期,但我不知道如何找到第二个最近的日期。任何帮助将不胜感激。

python pandas

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