我需要在R中处理一个巨大的文件(> 500mb).因此,我不是在R环境中加载这么重的文件,而是以特定行数的块处理文件,最后得到聚合值.
我需要用户指定文件(使用某种浏览功能),以便我可以将文件路径提供给我的算法
fileConnection <-file( "../output/name.txt", open="w")
Run Code Online (Sandbox Code Playgroud)
有没有办法根据用户指定的地址从Shiny UI获取文件路径?我试过ShinyFiles包,但它只提供目录选择,而不是文件.
感谢你们!
我是新来的有光泽的人,很难解决这个问题。我试图在我的selectizeInput中创建一个“全选”按钮,但是在将输入从selectizeInput传递到updateSelectizeInput时遇到错误。有人可以帮我解决这个问题。
当我从输入框中选择“全选”时,应用程序关闭并显示错误:“ $运算符对原子向量无效”
我在输入字段(selectizeInput())中添加了“全选”。当用户单击“全选”时,updateSelectizeInput()将输入中所有名称和“全选”之间的差异添加到集合中,并使用所有值填充过滤器框。
脚本的数据:https : //drive.google.com/file/d/0B_sB3ef_9RntOWJjNlhrUjk3a1k/view
这是我的剧本
用户界面
library(shiny)
shinyUI(fluidPage(
navbarPage(
"Tab_name",
tabPanel("Engine",
bootstrapPage(
div(style="display:inline-block", fileInput("file_attr", "attributes:")),
uiOutput("CountryList")
)
)
)
))
Run Code Online (Sandbox Code Playgroud)
服务器
library(shiny)
shinyServer(function(input, output) {
data_attr <- reactive({
file1 <- input$file_attr
if(is.null(file1)){return()}
read.table(file=file1$datapath, sep=",", header = TRUE, stringsAsFactors = FALSE)
})
countries <- reactive({
if(is.null(data_attr()$Country)){return()}
data_attr()$Country
})
observeEvent(input$file_attr, {
output$CountryList <- renderUI({
if(is.null(data_attr()$Country)){return()}
selectizeInput('show_vars', 'Country Filter', choices = c("Select All",unique(countries())), multiple = TRUE)
})
})
observe({
if ("Select All" %in% input$show_vars){
selected_choices <- setdiff(c("Select All",unique(countries())), …Run Code Online (Sandbox Code Playgroud) 我很难将自定义函数应用于Pandas中的每组groupby列
我的自定义函数采用一系列数字并获取连续对的差异并返回所有差异的均值.下面是代码
def mean_gap(a):
b = []
for i in range(0, len(a)-1):
b.append((a[i+1]-a[i]))
return np.mean(b)
Run Code Online (Sandbox Code Playgroud)
所以如果a = [1,3,7] mean_gap(a)会给我((3-1)+(7-3))/ 2)= 3.0
Dataframe:
one two
a 1
a 3
a 7
b 8
b 9
desired result
Dataframe:
one two
a 3
b 1
Run Code Online (Sandbox Code Playgroud)
df.groupby([ '一个'])[ '2'].???
我是熊猫新手.我读到groupby一次取每行的值,而不是完整的序列.因此我无法在groupby之后使用lambda.请帮忙!