python中grid函数_Python中的R expand.grid()函数

这篇博客探讨了如何在Python中复制R语言中expand.grid()函数的行为,该函数用于生成所有因素组合的数据框。作者提供了使用rpy2包进行交互的例子,但遇到了问题。他们寻求一个纯Python的解决方案来创建所有可能的组合,而不需要依赖外部库。
摘要由CSDN通过智能技术生成

有没有一个Python函数类似于R中的expand.grid()函数?提前谢谢。

下面是这个R函数的描述和一个例子。Create a Data Frame from All Combinations of Factors

Description:

Create a data frame from all combinations of the supplied vectors

or factors.

> x

> y

> expand.grid(x,y)

Var1 Var2

1 1 1

2 2 1

3 3 1

4 1 2

5 2 2

6 3 2

7 1 3

8 2 3

9 3 3

(EDIT2)下面是rpy包的一个示例。我希望得到相同的输出对象,但不使用R:>>> from rpy import *

>>> a = [1,2,3]

>>> b = [5,7,9]

>>> r.assign("a",a)

[1, 2, 3]

>>> r.assign("b",b)

[5, 7, 9]

>>> r("expand.grid(a,b)")

{'Var1': [1, 2, 3, 1, 2, 3, 1, 2, 3], 'Var2': [5, 5, 5, 7, 7, 7, 9, 9, 9]}

编辑2012年9月2日:我真的对Python迷路了。列夫·莱维斯基在他的回答中给出的密码对我不起作用:>>> a = [1,2,3]

>>> b = [5,7,9]

>>> expandgrid(a, b)

Traceback (most recent call last):

File "", line 1, in

File "", line 2, in expandgrid

NameError: global name 'itertools' is not defined

但是,itertools模块似乎已安装(键入from itertools import *不会返回任何错误消息)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值