小编Nei*_*eil的帖子

如何在Python中的groupby中计算计数和百分比

分组后我有以下输出

Publisher.groupby('Category')['Title'].count()
Category
Coding          5
Hacking         7
Java            1
JavaScript      5
LEGO           43
Linux           7
Networking      5
Others        123
Python          8
R               2
Ruby            4
Scripting       4 
Statistics      2
Web             3
Run Code Online (Sandbox Code Playgroud)

在上面的输出中,我还希望该百分比,即第一行的百分比5*100/219,依此类推。我正在关注

 Publisher.groupby('Category')['Title'].agg({'Count':'count','Percentage':lambda x:x/x.sum()})
Run Code Online (Sandbox Code Playgroud)

但这给了我一个错误。请帮忙

python group-by pandas

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

如何在闪亮的仪表板中动态填充下拉框选择

我正在闪亮的仪表板中开发一个应用程序,因为我想在csv上传后动态填充下拉框。下拉列表将包含我从以下代码中获得的用户注册的前10个城市。

final_data %>%
  group_by(registrant_city) %>%
  summarise(Total = n())    %>%
  arrange(desc(Total))      %>%
  top_n(n = 10)  
Run Code Online (Sandbox Code Playgroud)

这些城市应进入下拉框。

tabItem("email",
          fluidRow(
            box(
              width = 4, status = "info",solidHeader = TRUE,
              title = "Send Emails",
              selectInput("email_select", 
                          "Select Email Content",
                          choices = c("Price" = "price",
                                      "Services" = "service"
                                      )),
              selectInput("cities", 
                          "Select City",
                           choices = ??
                          ))
                         ))
Run Code Online (Sandbox Code Playgroud)

请帮忙..

r drop-down-menu shinydashboard

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

如何在pandas中将对象转换为日期

我有pandas专栏如下

   January 2014
   February 2014
Run Code Online (Sandbox Code Playgroud)

我想将其转换为以下格式201401 201402我正在做以下

   df.date = pd.to_datetime(df.date,format= '%Y%B') 
Run Code Online (Sandbox Code Playgroud)

但是,它给了我一个错误.

pandas

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

如何在熊猫中 dcast 数据框

我在熊猫中有以下数据框

  key       no      lpm
  ab_12     1       12 
  ab_12     2       11
  ab_12     3       11
  ac_12     1       12 
  ac_12     2       11
  ac_12     4       11
  ad_12     1       12 
  ad_12     2       11
  ad_12     3       11
Run Code Online (Sandbox Code Playgroud)

我想要的数据框如下

  key    no_1  no_2   no_3             no_4
  ab_12  12    11     11               does not exist
  ac_12  12    11     does not exist   11
  ad_12  12    11     11               does not exist 
Run Code Online (Sandbox Code Playgroud)

我正在熊猫中做以下工作,但它没有给我我需要的东西。

  df= df.melt('key').groupby(['key', 'value']).unstack(fill_value='Does not exist')
Run Code Online (Sandbox Code Playgroud)

python pandas

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

如何在熊猫条件下进行减法

我在pandas中有以下数据帧

  code     amnt     pre_amnt     
  123      200      200
  124      234      0
  125      231      231
  126      236      0
  128      122      130
Run Code Online (Sandbox Code Playgroud)

我只想在pre_amnt非零时进行减法.我想要的数据帧是

  code     amnt     pre_amnt    diff    
  123      200      200         0
  124      234      0           0
  125      231      231         0
  126      236      0           0
  128      122      130         8
Run Code Online (Sandbox Code Playgroud)

所以,如果pre_amnt为零则diff应该也是0.我怎么能在熊猫中做到这一点?

python pandas

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

按dplyr分组并计算百分比

我在R中有以下数据框

   Service      Container_Pick_Day
    ABC              0
    ABC              1
    ABC              1
    ABC              2
    ABC              NA
    ABC              0
    ABC              1
    DEF              NA
    DEF              0
    DEF              1
    DEF              1
    DEF              1
    DEF              2
    DEF              1
Run Code Online (Sandbox Code Playgroud)

Container_Pick_Day是数字,由NA值组成。我想做的是计算忽略值Service的容器的明智百分比0th day,after 1 day,2 day and so onNA

所需的数据帧将是

 Service      Container_Pick_Day      Percentage
    ABC              0                (2/6)*100 = 33.33 
    ABC              1                (3/6)*100 = 50  
    ABC              2                (1/6)*100 = 16.67
    DEF              0                (1/6)*100 = 16.67
    DEF              1                (3/6)*100 = 50
    DEF              2                (1/6)*100 = …
Run Code Online (Sandbox Code Playgroud)

r

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

使用Boto3从S3存储桶读取多个csv文件

我需要使用python中的boto3从S3存储桶中读取多个csv文件,最后将这些文件合并到熊猫的单个数据框中。

我能够从python中的以下脚本读取单个文件

 s3 = boto3.resource('s3')
 bucket = s3.Bucket('test-bucket')
 for obj in bucket.objects.all():
    key = obj.key
    body = obj.get()['Body'].read()
Run Code Online (Sandbox Code Playgroud)

以下是我的路

 files/splittedfiles/Code-345678
Run Code Online (Sandbox Code Playgroud)

Code-345678我有多个csv文件,我必须阅读并将其组合到大熊猫中的单个数据帧

另外,如何将选定Codes的列表作为列表传递,以便它仅读取那些文件夹。例如

files/splittedfiles/Code-345678
files/splittedfiles/Code-345679
files/splittedfiles/Code-345680
files/splittedfiles/Code-345681
files/splittedfiles/Code-345682
Run Code Online (Sandbox Code Playgroud)

从上面我只需要阅读以下代码下的文件。

345678,345679,345682
Run Code Online (Sandbox Code Playgroud)

如何在python中完成?

python csv amazon-s3 boto3

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

如何从pandas中的两个数据帧执行条件映射

我在熊猫中有2个数据帧

df1

date         tank        quantity
2018-04-01   1           234
2018-04-02   1           343
2018-04-03   1           334
2018-04-04   1           143
2018-04-05   1           237
2018-04-06   1           234
2018-04-07   1           last observation
2018-04-01   2           234
2018-04-02   2           343
2018-04-03   2           334
2018-04-04   2           143
2018-04-05   2           237
2018-04-06   2           234
2018-04-07   2           last observation

df2
date         tank        quantity
2018-04-01   1           221
2018-04-02   1           200
2018-04-03   1           100
2018-04-04   1           123
2018-04-05   1           234.56
2018-04-06   1           324.67
2018-04-07   1           324.67
2018-04-01   2           221
2018-04-02   2           221.23 …
Run Code Online (Sandbox Code Playgroud)

pandas

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

如何将pandas中的groupby中的值与先前的值进行比较

我在 pandas 中有以下数据框

  ID     date          no      start      end
  1      01-01-2019    10      101.23     112.23
  2      02-01-2019    10      112.23     120.43
  3      03-01-2019    10      121.23     130.23
  4      04-01-2019    10      130.23     140.43
  5      01-01-2019    11      101        112 
  6      02-01-2019    11      112        120
  7      03-01-2019    11      130        140
  8      04-01-2019    11      140        150.43
Run Code Online (Sandbox Code Playgroud)

我想检查当前行end与下一行start值分组依据no,如果存在差异,则想要设置一个标志并计算差异

以下是我想要的数据框

  ID     date          no      start      end      flag   diff
  1      01-01-2019    10      101.23     112.23   0      0 
  2      02-01-2019    10      112.23     120.43   0      0
  3      03-01-2019    10 …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

如何从当前日期中减去天数并在熊猫中返回日期对象

我想从当前日期中减去 30 天并以以下格式获取日期。

  final_date = 2019-12-24
Run Code Online (Sandbox Code Playgroud)

我在熊猫中做以下事情,但得到时间戳对象作为回报

  final_date = pd.to_datetime(pd.datetime.now().date() - timedelta(30))
Run Code Online (Sandbox Code Playgroud)

我怎样才能在熊猫中做到这一点?

pandas

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

标签 统计

pandas ×7

python ×5

r ×2

amazon-s3 ×1

boto3 ×1

csv ×1

drop-down-menu ×1

group-by ×1

shinydashboard ×1