小编Imr*_*ran的帖子

pandas首先堆叠第二列,反之亦然

我有一个有两列的DataFrame,我希望将第二列堆叠在第一列下面,第一列放在第二列下面.

pd.DataFrame({'A':[1,2,3], 'B': [4,5,6]})

   A  B
0  1  4
1  2  5
2  3  6
Run Code Online (Sandbox Code Playgroud)

期望的输出:

   A  B
0  1  4
1  2  5
2  3  6
3  4  1 
4  5  2
5  6  3
Run Code Online (Sandbox Code Playgroud)

到目前为止,我尝试过:

pd.concat([df, df[['B','A']].rename(columns={'A':'B', 'B':'A'})])

   A  B
0  1  4
1  2  5
2  3  6
3  4  1
4  5  2
5  6  3
Run Code Online (Sandbox Code Playgroud)

这是最干净的方式吗?

python pandas

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

如何检查列表是否包含重复项?

我想验证列表以确保没有重复的项目.我的问题是我不知道如何在if语句中执行此操作.如果列表中有重复项,python中是否存在返回False的方法或内容?

这就是我的想法:

lst = ["1","2","3","3","4"]

if #lst contains no duplicates :
    print("success")
else:
    print("duplicate found")
Run Code Online (Sandbox Code Playgroud)

提前致谢.

python validation

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

如何在Nim中构建单元测试?

我在看unittest文档,发现可以将多个suite块放在一个测试文件中。

但是,我想拥有多个测试文件,并使用单个命令运行它们。我可以编写一个bash脚本来依次编译和运行每个脚本:

#!/bin/bash

nim c -r test1.nim
nim c -r test2.nim
...
Run Code Online (Sandbox Code Playgroud)

但是有更好的方法吗?例如,在Python中,我可以自动发现并运行该表单的所有文件test*.py

unit-testing nim-lang

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

去除第一个空格到行尾

我正在尝试使用查找和替换正则表达式将 TextMate 中文本文件每一行的第一个空格剥离到行尾。

例如,我想替换以下行:

One, 2, Three!
Run Code Online (Sandbox Code Playgroud)

和:

One,
Run Code Online (Sandbox Code Playgroud)

我看过这个问题,但我真的不明白如何使用公认的答案。它似乎匹配整行,而不是第一个空格。

我是否需要使用后视来匹配第一个空格?

我开始尝试:

^([^\s]*)\s.+$
Run Code Online (Sandbox Code Playgroud)

如果有空格,则匹配整行,但如果行上没有空格,则一次匹配两行。

当我有正确的正则表达式时,我是否只需将它放在“查找”框中并点击“全部替换”,“替换”框为空白?我也不太明白回答者在我链接到的问题中谈论的“替换模式”语法。

谢谢。

编辑 2018 年 8 月 9 日:这似乎得到了一些看法。如果有人希望使用命令行工具执行此操作,您可以尝试:

awk '{print $1}' myfile.txt > output.txt
Run Code Online (Sandbox Code Playgroud)

或者写回同一个文件,你可以这样做:

awk '{print $1}' myfile.txt | sponge myfile.txt
Run Code Online (Sandbox Code Playgroud)

这将在任何空格(包括制表符)之前取第一列。要专门在空格上拆分:

cat myfile.txt | cut -d ' ' -f 1 > output.txt
Run Code Online (Sandbox Code Playgroud)

regex textmate

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

如何在神经网络的输出端执行诸如国际象棋移动合法性之类的规则?

我如何将规则(如国际象棋规则)应用于神经网络,以便网络不会预测/训练无效动作?

machine-learning neural-network lstm keras tensorflow

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

生成随机数组的简单确定性方法?

我正在寻找一种简单的方法来填充大int[] testArray数据.方法应接受单个参数来生成确定性的整数序列,但乍看之下看起来像噪声.

想到这样的事情,但数据可能有模式.

public int[] populate(int arraySize, int somePrime){
int[] testArray = new int[arraySize];
int offset = -100000; 
long fib = 0; long fibm1 = 1; long fibm2 = 1; 
//...
for(int i = offset; i< testArray.length; i++){
    fib= fibm1+ fibm2;
    fibm2= fibm1;
    fibm1= fib;
    if(i >= 0){  testArray[i] = (int) fib%somePrime; }
    }

return testArray[i];
}
Run Code Online (Sandbox Code Playgroud)

什么是更好的方法?

java random algorithm

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

C++:从命令行链接有问题

刚刚开始使用C++.我正在使用Eclipse CDT开发OSX.我有一个项目包含一些自定义类和两个文件"Test.hpp"和"Test.cpp" - 后者使用我的main()方法运行我在这两个文件中定义和实现的一些测试.

我可以在没有任何问题的情况下从Eclipse编译和运行,但是当我尝试使用"g ++ Test.cpp"从命令行进行编译时,我得到了很多链接错误,基本上列出了Test.cpp中定义或引用的所有方法未定义的符号.

我从命令行以类似的方式编译了一些基本程序(一个头文件和一个实现文件),没有任何问题,但我无法弄清楚为什么这个不能工作.请帮忙!

编辑:我的措辞不清楚,但是我也有其他源文件.接受的答案就是诀窍:"g ++ Test.cpp Other1.cpp Other2.cpp".谢谢.

c++ linker

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