我正在使用Python读取熊猫中的小熊猫函数。这里提到的作者如下。
In [13]: df = DataFrame({'key1' : ['a', 'a', 'b', 'b', 'a'],....: 'key2' : ['one', 'two', 'one', 'two', 'one'],....: 'data1' : np.random.randn(5),....: 'data2' : np.random.randn(5)})In [14]: dfOut[14]: data1 data2 key1 key20 -0.204708 1.393406 a one1 0.478943 0.092908 a two2 -0.519439 0.281746 b one3 -0.555730 0.769023 b two4 1.965781 1.246435 a oneIn [21]: states = np.array(['Ohio', 'California', 'California', 'Ohio', 'Ohio'])In [22]: years = np.array([2005, 2005, 2006, 2005, 2006])In [23]: df['data1'].groupby([states, years]).mean()Out[23]:California 2005 0.478943 2006 -0.519439Ohio 2005 -0.380219 2006 1.965781我的问题是DF ['data1']如何被分组,因为DF与状态和岁月相关。我不是在想如何产生输出。请解释
执行时 groupby 你可以通过
- 经过 :映射,功能,str或疑问
- 用于确定组的组。如果通过一个函数,则将对象索引的每个值调用。如果传递了dict或序列,则将使用序列或dict值来确定组(首先对序列的值对齐;请参见.Align()方法)。如果通过ndarray,则使用这些值确定组。 str或str的列表可以通过自我中的列传递给组
iterable
在这种情况下,您通过了一个值得一提的或一个数组。当您使用数组时,最好的长度与数据帧本身相同。否则:
# Doesn't throw an error because the length of `df` is 5df.groupby(list(range(5)))# This does throw an errordf.groupby(list(range(6)))KeyError: 0pd.Series
考虑该系列 s 我们指定长度与 df 以及相同的索引。
s = pd.Series(list(range(len(df))), df.index)然后,当我们做一个 groupby 指数是 aligned
df.groupby(s)与 pd.Series 我们不必关心时间,因为,熊猫会为我们做好一致
# also worksdf.groupby(s.append(pd.Series(1, [len(df)])))str
如果将字符串传递给 gropuby,熊猫会寻找一个名称为 groupby.
function
在通过功能的情况下,熊猫将在索引上映射该功能 df 并使用结果 iterable 到Groupby。
我是ruby的新手,我认为重新构建一个我用C#编写的简单聊天程序是个好主意。我正在使用Ruby2.0.0MRI(Matz的Ruby实现)。问题是我想在服务器运行时为简单的服务器命令提供I/O。这是从示例中获取的服务器。我添加了使用gets()获取输入的命令方法。我希望此方法在后台作为线程运行,但该线程正在阻塞另一个线程。require'socket'#Getsocketsfromstdlibserver=TCPServer.open(2000)#Sockettolistenonport2000defcommandsx=1whilex==1exitProgram=gets.chomp
如何在Rake任务中运行Capybara功能?例如:访问('http://google.com')谢谢! 最佳答案 在任务中尝试这样的事情:require'capybara'require'capybara/dsl'Capybara.current_driver=:seleniumBrowser=Class.new{includeCapybara::DSL}page=Browser.new.pagepage.visit("http://www.google.com")puts(page.html)
我不确定这种事情是否很常见,但我一直在尝试创建只是Rails应用程序包装器的gem。我的gem将有一个生成器来创建config.ru,但Rails应用程序将位于gem的lib目录中。我需要知道如何“嵌入”Rails应用程序并对其进行配置,以便它可以在gem中运行。例如:$mygemnewprojectmygemcreatedadirectorycalled"project"withthefollowingfiles:project/config.ruproject/widgets/project/foobars/我的gem还将生成一些需要以某种方式添加到Rails的目录,以便我可以从G
我有一个定义类的Ruby脚本。我希望脚本执行语句BoolParser.generate:file_base=>'bool_parser'仅当脚本作为可执行文件被调用时,而不是当它被irbrequire(或通过-r在命令行上传递)时。我可以用什么来包装上面的语句,以防止它在我的Ruby文件加载时执行? 最佳答案 条件$0==__FILE__...!/usr/bin/ruby1.8classBoolParserdefself.generate(args)p['BoolParser.generate',args]endendif$0==_
我有一个包含多个组件的存储库,其中大部分是用JavaScript(Node.js)编写的,一个是用Ruby(RubyonRails)编写的。我想要一个.travis.yml文件来触发一个运行每个组件的所有测试的构建。根据thisTravisCIGoogleGroupthread,目前还没有官方支持。我的目录结构是这样的:.├──构建服务器├──核心├──扩展├──网络应用├──流浪文件├──package.json├──.travis.yml└──生成文件我希望能够运行特定版本的Ruby(2.2.2)和Node.js(0.12.2)。我已经有了一个make目标,所以maketest在每
我是编程新手,正在尝试遵循使用#!用ruby评论。我一直收到消息:bash:matz.rb:找不到命令我正在使用这个评论:#!/usr/bin/envruby我试过有和没有后面的空格!以及有和没有环境。当我使用$哪个rubyruby在:/usr/bin/ruby我还进入了操作系统,将所有用户对文件matz.rb的权限更改为rwx,但没有任何效果。是我做错了什么还是我的系统设置不正确? 最佳答案 /usr/bin/env部分没问题。运行时需要为bash提供matz.rb的路径。如果您在matz.rb所在的目录中,请键入“./matz.
我正在使用spork测试Sinatra应用程序,使用Ruby1.9.2,测试运行时间约为3.5秒,但在Ruby1.8.7中,平均运行时间为1.2秒。我确实尝试过Ruby1.9.3甚至JRuby,但它们在我使用的gems上有一些错误。有没有办法将Ruby1.9.2的rspec性能提高到1.8.7的水平?我的gem文件:source:rubygemsgem'sinatra','1.3.1'gem'thin','1.3.1'gem'haml','3.1.4'gem'datamapper','1.2.0'gem'dm-postgres-adapter','1.2.0'gem'carrierwa
我正在尝试使用ruby脚本进行一些headless测试。本质上,我在显示器:1上执行Xvfb,然后使用watir-webdriver启动Watir::Browser.new(:firefox)。如果您以root身份运行脚本,效果会很好-我可以运行x11vnc并观察脚本执行浏览器并与之交互。问题是,我需要能够从Rails应用程序调用这个ruby脚本,而不是以root身份运行它...如果我尝试以普通用户身份从命令行运行脚本,Xvfb会启动on:1像往常一样,但Watir不会启动浏览器......它最终会在60秒后超时。通过VNC连接会显示带有鼠标光标的黑屏。我可以从命令行完成所有操
有没有人有在Maven中运行用Ruby编写的单元测试的经验。任何输入,如要使用的库/maven插件,将不胜感激!我们已经在使用Maven+hudson+Junit。但是我们正在引入Ruby单元测试,找不到任何同样好的组合。 最佳答案 我建议让Maven使用ExecMavenPlugin启动rake测试(exec:exec目标)并使用ci_reportergem生成单元测试结果的XML文件,Hudson、Bamboo等可以读取该文件,以与JUnit测试相同的格式显示测试结果。如果您不需要使用mvntest运行Ruby测试,您也可以只使
我有一个使用Phusionpassenger+Apache网络服务器部署的RubyonRails应用程序。每个请求是否都在由PhusionPassenger生成的自己的线程中运行? 最佳答案 Passenger(以及大多数其他应用程序服务器)每个线程运行不超过一个请求。通常每个进程也只有一个线程。来自PhusionPassengerdocs:PhusionPassengersupportstwoconcurrencymodels:process:single-threaded,multi-processedI/Oconcurrenc