如何重复以下示例序列:
l = np.array([3,4,5,6,7])
Run Code Online (Sandbox Code Playgroud)
截至n倍,加倍在每次重复的值.因此n=3:
[3, 4, 5, 6, 7, 6, 8, 10, 12, 14, 12, 16, 20, 24, 28]
Run Code Online (Sandbox Code Playgroud)
是否有一种简单的方法可以避免循环numpy?
我有一个df:
ColA ColB
1 1
2 3
2 2
1 2
1 3
2 1
Run Code Online (Sandbox Code Playgroud)
我想使用两个不同的字典来更改ColB中的值。我想使用d1ColA中的值为1以及d2ColB中的值为2的情况。
d1 = {1:'a',2:'b',3:'c'}
d2 = {1:'d',2:'e',3:'f'}
Run Code Online (Sandbox Code Playgroud)
导致:
ColA ColB
1 a
2 f
2 e
1 b
1 c
2 d
Run Code Online (Sandbox Code Playgroud)
实现此目标的最佳方法是什么?
我想获取熊猫数据框中每个值的对数。我已经尝试过了,但是没有用:
#Reading data from excel and rounding values on 2 decimal places
import math
import pandas as pd
data = pd.read_excel("DataSet.xls").round(2)
log_data= math.log10(data)
Run Code Online (Sandbox Code Playgroud)
它给了我这个错误:
TypeError:必须是实数,而不是DataFrame
你有什么想法吗?
我有一个样本数据如下:
import pandas as pd
df = pd.DataFrame({"x": [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120],
"id": [1, 1, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5],
"label": ["a", "a", "a", "b", "a", "b", "b", "b", "a", "b", "a", "b"]})
Run Code Online (Sandbox Code Playgroud)
所以我的数据看起来像这样
x id label
10 1 a
20 1 a
30 1 a
40 1 b
50 2 a
60 2 b
70 3 a
80 3 a
90 4 b
100 4 a …Run Code Online (Sandbox Code Playgroud) 我有一个带有重复索引的pd.Series,每个索引包含一组布尔值:
FA155 False
FA155 False
FA155 False
FA155 True
FA155 True
FA155 True
FA155 True
FA155 True
FA155 False
Run Code Online (Sandbox Code Playgroud)
我想以有效的方式为每个不同的索引做的是将序列的第一个和最后一个True值保持为True,并将其余值设置为False.True之间也可能存在False值.
因此,对于此示例,结果将是:
FA155 False
FA155 False
FA155 False
FA155 True
FA155 False
FA155 False
FA155 False
FA155 True
FA155 False
Run Code Online (Sandbox Code Playgroud)
任何帮助将非常感激.
假设我有一个矩阵和一个向量,如下所示:
x = torch.tensor([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
y = torch.tensor([0, 2, 1])
Run Code Online (Sandbox Code Playgroud)
有没有办法切片它x[y]所以结果是:
res = [1, 6, 8]
Run Code Online (Sandbox Code Playgroud)
所以基本上我取第一个元素y并取x对应于第一行和元素列的元素。
干杯
我有一个这样的清单:
list_1 = [np.NaN, np.NaN, 1, np.NaN, np.NaN, np.NaN, 0, np.NaN, 1, np.NaN, 0, 1, np.NaN, 0, np.NaN, 1, np.NaN]
Run Code Online (Sandbox Code Playgroud)
所以有以 开头1和结尾的间隔0。我怎样才能替换这些间隔中的值,比如用 1?结果将如下所示:
list_2 = [np.NaN, np.NaN, 1, 1, 1, 1, 0, np.NaN, 1, 1, 0, 1, 1, 0, np.NaN, 1, np.NaN]
Run Code Online (Sandbox Code Playgroud)
我NaN在这个例子中使用,但可以适用于任何值的通用解决方案也很棒
假设我有以下嵌套列表:
L = [['John','Sayyed'], ['John' , 'Simon'] ,['bush','trump'],
['Sam','Suri','NewYork'],['Suri','Orlando','Canada']]
Run Code Online (Sandbox Code Playgroud)
如何通过将具有共同元素的子列表与该组中的至少另一个子列表结合起来,对这些子列表进行分组?所以对于前面的例子,结果应该是:
[['John','Sayyed','Simon'] ,['bush','trump'],
['Sam','Suri','NewYork','Orlando','Canada']]
Run Code Online (Sandbox Code Playgroud)
因此,前两个子列表在他们共享时加入'John'.有人可以分享他们宝贵的想法吗?
我怎么能使用多维Grouper,在这种情况下是另一个数据帧,作为另一个数据帧的Grouper?可以一步完成吗?
我的问题主要是关于如何在这些情况下执行实际的分组,但要使其更具体,请说我想接受transform并采取sum.
考虑例如:
df1 = pd.DataFrame({'a':[1,2,3,4], 'b':[5,6,7,8]})
print(df1)
a b
0 1 5
1 2 6
2 3 7
3 4 8
df2 = pd.DataFrame({'a':['A','B','A','B'], 'b':['A','A','B','B']})
print(df2)
a b
0 A A
1 B A
2 A B
3 B B
Run Code Online (Sandbox Code Playgroud)
然后,预期的输出将是:
a b
0 4 11
1 6 11
2 4 15
3 6 15
Run Code Online (Sandbox Code Playgroud)
凡列a并b在df1已按列进行分组a,并b从df2分别.
我想在列表中找到在字符串的后3个字符内具有重复结尾的项目
我知道如何使用下面的代码查找重复项,但是需要代码帮助,如何找到“ sara”和“ tamara”的最后一个字符串相同,以便可以将其中一个项复制到plicate_finding列表中
使用以下代码,我只能识别列表中完全相同的重复项:
names = ["tom", "john", "sara" , "tamara" , "tom"]
single_finds = []
duplicate_finds = []
for i in names:
if i in single_finds:
duplicate_finds.append(i)
else:
single_finds.append(i)
print (single_finds)
print (duplicate_finds)
Run Code Online (Sandbox Code Playgroud)
输出:
['tom', 'john', 'sara', 'tamara']
['tom']
Run Code Online (Sandbox Code Playgroud)