小编ana*_*rce的帖子

如何为子字符串的开头指定动态位置?

如示例中所示,我正在尝试substring使用data.frame(video_data_2)中的Video_full列.我希望在这段时间之后保留所有角色.期间始终存在,只有一个期间,并且该列的每个值处于不同的位置.

     Date                     Video_full      Instances   
1 Apr 1, 2010  installs/AA.intro_video_1      546         
2 Apr 1, 2010  installs/ABAC.intro_video_2    548      
Run Code Online (Sandbox Code Playgroud)

我有子串工作:

video_data_2$Video_full <- substring(video_data_2$Video_full,11)
Run Code Online (Sandbox Code Playgroud)

而且strsplit:

strsplit("installs/AA.intro_video_1 ",'[.]')
Run Code Online (Sandbox Code Playgroud)

我只是无法弄清楚如何substring在动态位置启动或仅保留返回的第二个值strsplit.

感谢您为简单问题提供的任何帮助.

r

5
推荐指数
3
解决办法
2778
查看次数

无法在Ruby on Rails 3中将csv导入MySQL数据库

我正在通过Ruby on Rails 3将数据从CSV文件导入MySQL数据库.客户模型已经创建.此外,下面的脚本将生成puts row [2]并正确放置row [3].当我为customers.warranty_part_no和warranty_part_desc的数据库字段添加分配时,会产生以下错误.

csv = CSV.read(file, col_sep: ",", headers: false)

c = Customer.new  
csv.each do |row|
        c.warranty_part_no = row[2],
        c.warranty_part_desc = row[3]
end
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误.

uninitialized constant Customer (NameError)
Run Code Online (Sandbox Code Playgroud)

经过一些测试后,我认为这个问题是因为我从命令行运行这个脚本,因此没有使用更大的rails应用程序执行customer.rb模型,因此永远不会创建Customer类.如何从命令行运行此脚本并利用ActiveRecord或activerecord-import?如果那是不可能的,我该如何为它创建路径或从应用程序中的视图调用它?

我在Ruby 1.9.2和Rails 3.2.2上.提前感谢任何建议.

ruby mysql ruby-on-rails-3

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

如何为groupby DataFrame创建滚动百分比

我试图计算每个产品按月变化的百分比.这是我到目前为止所拥有的.我有一个涉及单个产品的DataFrame.我很难理解如何将计算应用于包含许多产品和许多月的结果集.

示例数据帧:

product_desc    activity_month    prod_count
product_a       1/1/2014          53
product_b       1/1/2014          42
product_c       1/1/2014          38
product_a       2/1/2014          26
product_b       2/1/2014          48
product_c       2/1/2014          39
product_a       3/1/2014          41
product_b       3/1/2014          35
product_c       3/1/2014          50
Run Code Online (Sandbox Code Playgroud)

我需要得到的是数据框,其中按月添加的product_desc百分比变化为:

product_desc    activity_month   prod_count pct_change
product_a       1/1/2014         53 
product_a       2/1/2014         26         0.490566038
product_a       3/1/2014         41         1.576923077
product_b       1/1/2014         42 
product_b       2/1/2014         48         1.142857143
product_b       3/1/2014         35         0.729166667
product_c       1/1/2014         38 
product_c       2/1/2014         39         1.026315789
product_c       3/1/2014         50         1.282051282
Run Code Online (Sandbox Code Playgroud)

我可以使用单个product_desc在数据框架上计算这个:

df['change_rate1'] = df['prod_count'].shift(-1)/df['prod_count']
df['pct_change'] = df['change_rate1'].shift(1)
df = df.drop('change_rate1',1) …
Run Code Online (Sandbox Code Playgroud)

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

使用read.csv,空字段已将NA添加到data.frame

我使用read.csv导入包含一些空单元格的列的文件.我需要这些单元格保持为空并且不包含任何值.

但是,NA每次导入时都会添加一个.我尝试了na.strings(喜欢na.strings="NULL"na.strings="")的变化无济于事.

是否有一种简单的方法可以强制观察结果为空?

任何建议表示赞赏.

r

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

如何点击Mechanize和Nokogiri中的链接?

我正在使用Mechanize来抓取Google Wallet的订单数据.我正在捕获第一页的所有数据,但是,我需要自动链接到后续页面以获取更多信息.

#purchaseOrderPager-pagerNextButton将移动到下一页,这样我就可以获取更多要捕获的记录.元素看起来像这样.我需要点击它继续前进.

<a id="purchaseOrderPager-pagerNextButton" class="kd-button small right"
 href="purchaseorderlist?startTime=0&amp;...
;currentPageStart=1&amp;currentPageEnd=25&amp;inputFullText=">
<img src="https://www.gstatic.com/mc3/purchaseorder/page-right.png"></a>
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试以下操作时出现错误:

  next_page = @orders_page.search("#purchaseOrderPager-pagerNextButton")
  next_page.click
Run Code Online (Sandbox Code Playgroud)

错误:

undefined method `click' for #<Nokogiri::XML::NodeSet:0x007f9019095550> (NoMethodError)
Run Code Online (Sandbox Code Playgroud)

ruby mechanize nokogiri

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

如何确定时间序列的滞后?

我正在研究时间序列问题,并希望分解以获得有关滞后的一些基本信息.目标是根据变量变量的变化来评估输出变量的滞后,作为下面示例data.frame的一部分.完整的data.frame有更多的数据,但它是一周一次,并遵循与此示例相同的结构.

year <- c(2010,2010,2010,2010)
week <- c("P7W1","P7W2","P7W3","P7W4")
output <- c(3295,4379,4284,4832)
change <- c(1912,2177,1587,2708)

timeTest <- data.frame(year,week,output,change)
Run Code Online (Sandbox Code Playgroud)

我用以下内容创建了一个时间序列对象.

timeObject <- ts(timeTest, start=c(2010,7), frequency=52)
Run Code Online (Sandbox Code Playgroud)

但是,当我运行decompose(timeObject)时,我收到一条错误消息,指出我没有或少于2个句点.我在这里显然缺少一些东西,任何建议都表示赞赏.

r time-series

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

循环遍历数组的索引

我正在开发一个Ruby脚本,它将从Gmail下载电子邮件并下载与特定模式匹配的附件.我基于Ruby 的优秀Mail gem.我使用的是Ruby 1.9.2.我不是那种经验丰富的Ruby,并感谢任何提供的帮助.

在下面的代码中,电子邮件是从gmail返回的包含特定标签的电子邮件数组.我所坚持的是循环遍历电子邮件数组并处理每封电子邮件上的多个附件.如果我指定一个索引值,电子邮件[index] .attachments.each的内部循环确实有效,我没有成功地包装第一个循环来遍历数组的所有索引值.

emails = Mail.find(:order => :asc, :mailbox => 'label')

emails.each_with_index do |index|
    emails[index].attachments.each do | attachment |
      # Attachments is an AttachmentsList object containing a
      # number of Part objects
      if (attachment.filename.start_with?('attachment'))
        filename = attachment.filename
        begin
            File.open(file_dir + filename, "w+b", 0644) {|f| f.write attachment.body.decoded}
        rescue Exception => e
            puts "Unable to save data for #{filename} because #{e.message}"
        end
      end
    end
end
Run Code Online (Sandbox Code Playgroud)

ruby

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

如何在 statsmodels 中从 OLS 返回斜率

我正在使用 statsmodels 拟合 OLS 模型。我需要返回拟合线的斜率。

model = sm.OLS(y, X)
results = model.fit()
Run Code Online (Sandbox Code Playgroud)

results.fittedvalues给我线的点。如何获得斜率?

python statsmodels

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

如何在表单视图中捕获查询字符串参数?

我正在尝试设置一个表单,以便捕获提交表单的页面,并用于将访问者重定向回该页面。该表单出现在站点的每个页面上,并包含在 base.html 模板中。这是一个 Django 1.7 项目。

我愿意使用与我不同的方法,所以如果有更好的方法请提出建议。

在settings.py中

TEMPLATE_CONTEXT_PROCESSORS = TCP + (
    'django.core.context_processors.request',
)
Run Code Online (Sandbox Code Playgroud)

在views.py中。

def submit_user_content(request):
  path = request.GET.return_url
  user = request.user
  text_content = request.POST['user_content']
  UserContent(url = path, author = user, content = text_content).save()
  return redirect( return_url, context_instance=RequestContext(request, processors=[user_content]))
Run Code Online (Sandbox Code Playgroud)

在 base.html 中

<form id="submit_user_content" method="post" action="/myapp/submit_user_content/?return_url={{ request.path|urlencode }}">
  {% csrf_token %}
  <textarea name="user_content" form="submit_user_content" rows="8" cols="80"></textarea>
  <input type="submit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)

在浏览器中提交表单时,它会转到:

http://127.0.0.1:8000/myapp/submit_user_content/?return_url=/myapp/defin/
Run Code Online (Sandbox Code Playgroud)

并产生此错误:

AttributeError at /myapp/submit_user_content/
'QueryDict' object has no attribute 'return_url'
Run Code Online (Sandbox Code Playgroud)

虽然在回溯中我看到请求填充了以下内容:

'<WSGIRequest\npath:/myapp/submit_user_content/,\nGET:<QueryDict: {u\'return_url\': [u\'/myapp/defin/\']}>'
Run Code Online (Sandbox Code Playgroud)

获取return_url的正确方法是什么?或者是否有更好的方法将表单重定向回用户所在的页面并捕获上一个页面路径?

python django django-forms

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

如何在Google Cloud Function中使用GCP服务帐号?

我有一个具有全域权限的 Google Cloud Platform 服务帐户。我可以从我的终端将其添加到 Google Analytics API 调用中,并且它可以正常工作。但是,我想运行与 Google Cloud Function 相同的脚本,并引用 GCP 中的服务帐户,而不在存储库或 GCP 之外的任何地方包含 client_secret_service_account.json 文件(如下所示)。那可能吗?

KEY_FILE_LOCATION = 'client_secret_service_account.json'
Run Code Online (Sandbox Code Playgroud)

google-cloud-platform google-cloud-functions

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