小编beh*_*uri的帖子

熊猫系列分裂了n次

我想只pandas.Series第一段空格分割一个.

pd.Series.str.split提供一个n参数,根据内联帮助的类似声音应该指定要执行多少分割.(它Both 0 and -1 will be interpreted as return all splits在笔记中说,但实际上没有说明它的作用!)

无论如何,它似乎不起作用:

>>> x = pd.DataFrame(['Split Once', 'Split Once As Well!'])
>>> x[0].str.split(n=1)
0               [Split, Once]
1    [Split, Once, As, Well!]
Run Code Online (Sandbox Code Playgroud)

python pandas

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

局部变量的地址

我很难理解这三者之间的区别:

const char * f() {
  return "this is a test";
}

const char * g() {
  const char * str = "test again";
  return str;
}

const double * h() {
  const double a = 2.718;
  return &a;
}
Run Code Online (Sandbox Code Playgroud)

我得到了警告h(),因为warning: address of local variable ‘a’ returned.这是有道理的,但我不明白为什么编译器(gcc -Wall)可以使用f()g()函数.

  • 那里没有局部变量吗?
  • 指针何时以及如何返回f()或被g()取消分配?

c++

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

当0或更低为真时,将数组行的其余部分清零

我有一个MxN阵列.我希望在一行中的元素为零或更少之后将所有值清零.

例如2x12阵列

111110011111
112321341411
Run Code Online (Sandbox Code Playgroud)

应该变成

111110000000
112321341411
Run Code Online (Sandbox Code Playgroud)

谢谢!

python arrays numpy

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

如何在ST monad中创建多态无盒装数组?

这段代码编译没有问题:

import Control.Monad.ST (ST)
import Data.Array.MArray (MArray)
import Data.Array.Unboxed (UArray)
import Data.Array.ST (runSTUArray, newArray, STUArray)

new :: Double -> UArray Int Double
new a = runSTUArray (newArray (0, 9) a)
Run Code Online (Sandbox Code Playgroud)

但是这个:

new :: e -> UArray Int e
new a = runSTUArray (newArray (0, 9) a)
Run Code Online (Sandbox Code Playgroud)

如人们所料,失败,错误:

No instance for (MArray (STUArray s) e (ST s))
  arising from a use of ‘newArray’
In the first argument of ‘runSTUArray’, namely
  ‘(newArray (0, 9) a)’
In the expression: runSTUArray (newArray (0, 9) …
Run Code Online (Sandbox Code Playgroud)

haskell

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

Haskell中所有1的最大尺寸平方

如果我有一个矩阵

m = 0 0 1 1 0
    0 1 1 1 0
    1 0 1 1 1
    1 1 1 1 1
    0 1 1 1 1
Run Code Online (Sandbox Code Playgroud)

如何找到m的最大nXn子矩阵,只有1?这似乎是命令式语言中的一个好问题,确实在使用其他语言的堆栈溢出时有这个答案,但我不知道从哪里开始使用Haskell.

我们可以假设m代表

m = [ [0, 0, 1, 1, 0]
    , [1, 1, 1, 0, 0]
    , [1, 0, 1, 1, 1]
    , [1, 1, 1, 1, 1]
    , [0, 1, 1, 1, 1]
    ]
Run Code Online (Sandbox Code Playgroud)

如果这有帮助.在这种情况下,答案将是右下角的3x3子矩阵.

algorithm haskell functional-programming

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

Haskell中Tree的数据类型

对于二叉树的数据类型,您可以编写如下内容:

data Tree a = Nil | Node a (Tree a) (Tree a)
Run Code Online (Sandbox Code Playgroud)

因此,如果我想要包含树,而节点只有两个子节点,那么数据类型怎么可能看起来像?

haskell types

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

通过下标将方程式解析为变量

在我想要的Mathematica一些功能和记录解决方案,等等.f[x]Solve[f[x] == a, x]Subscript[x, 1, a], Subscript[x, 2, a]

如果,这是最好的方法

  1. 我知道有多少解决方案存在
  2. 我不知道有多少解决方案

wolfram-mathematica

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

从符号代数方程中提取因子

Mathematica如果我有一个符号代数方程,我怎样才能得到它由特定术语相乘的因素是什么?

我的意思是说,作为一些计算的结果,我得到一个符号方程a x^2 + b x + c y,并说我对任何乘以x^2(即a在这里)感兴趣.如果应用于a x^2 + b x + c y退货,我应该写什么声明a.

(请注意,在示例中有一个b x术语,所以我不能使用衍生物来提取因子)

wolfram-mathematica

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

为什么类型铸造在这里不起作用?

以下代码具有类型转换错误

#define IMG_I (std::complex<double>(0, 1))
#define PI 3.1415926535
for (unsigned long int j = 0; j < 10; ++j)
  std::cout << exp(-IMG_I * PI * j);
Run Code Online (Sandbox Code Playgroud)

通过使用额外的括号或改变乘法的顺序,可以很容易地解决类型转换.但是我不清楚为什么首先出现类型转换问题以及为什么c ++无法处理上述代码.

有人可以帮我解释一下吗?

c++ casting

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