小编Leg*_*ess的帖子

从pandas DataFrame中的文本中提取子字符串作为新列

我要在下面列出一个“单词”列表

word_list = ['one','three']
Run Code Online (Sandbox Code Playgroud)

而且我在pandas数据框中有一列,下面是文本。

TEXT                                       |
-------------------------------------------|
"Perhaps she'll be the one for me."        |
"Is it two or one?"                        |
"Mayhaps it be three afterall..."          |
"Three times and it's a charm."            |
"One fish, two fish, red fish, blue fish." |
"There's only one cat in the hat."         |
"One does not simply code into pandas."    |
"Two nights later..."                      |
"Quoth the Raven... nevermore."            |
Run Code Online (Sandbox Code Playgroud)

所需的输出如下所示,其中保留原始文本列,但仅将word_list中的单词提取到新列中

TEXT                                       | EXTRACT
-------------------------------------------|---------------
"Perhaps she'll be the one for …
Run Code Online (Sandbox Code Playgroud)

python regex string extract pandas

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

在列表中随机交换两个值

我有以下列表:

a = [1, 2, 5, 4, 3, 6]
Run Code Online (Sandbox Code Playgroud)

而且我想知道如何在列表中随机交换任意两个值,而不管列表中的位置如何.以下是我正在考虑的一些示例输出:

[1, 4, 5, 2, 3, 6]
[6, 2, 3, 4, 5, 1]
[1, 6, 5, 4, 3, 2]
[1, 3, 5, 4, 2, 6]
Run Code Online (Sandbox Code Playgroud)

有没有办法在Python 2.7中执行此操作?我目前的代码是这样的:

import random
n = len(a)
if n:
    i = random.randint(0,n-1)
    j = random.randint(0,n-1)
    a[i] += a[j]
    a[j] = a[i] - a[j]
    a[i] -= a[j]
Run Code Online (Sandbox Code Playgroud)

然而,我目前拥有的代码的问题是,如果给出足够的交换和迭代,它会开始将所有值设置为零,这是我不想要的; 我希望值在数组中保持不变,但是执行类似于2opt的操作,并且每次交换时只切换两次.

python list python-2.7

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

将数据框中的行相乘,然后将它们相加 Python

我有一个函数可以应用到这个表

F(x) = 1.5*x1 + 2*x2 - 1.5*x3
Run Code Online (Sandbox Code Playgroud)

其中 xi, i = 1,2,3,是列值。

我有下表。

X1    | X2   | X3
------|------|------
20    |15    |12    
30    |17    |24    
40    |23    |36    
Run Code Online (Sandbox Code Playgroud)

我想要的输出如下所示,我将函数应用于每一行,取每列中的值并将其迭代地应用于函数,然后将值作为总和接收,并将另一列附加到数据帧上。

X1    | X2   | X3   |F(X)
------|------|------|------
20    |15    |12    |42
30    |17    |24    |43
40    |23    |36    |52
Run Code Online (Sandbox Code Playgroud)

有没有办法在 Python 2.7 中做到这一点?

python-2.7 pandas

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

标签 统计

pandas ×2

python ×2

python-2.7 ×2

extract ×1

list ×1

regex ×1

string ×1