我有一个像这样的字符串列表:
X = ["a", "b", "c", "d", "e", "f", "g", "h", "i"]
Y = [ 0, 1, 1, 0, 1, 2, 2, 0, 1]
Run Code Online (Sandbox Code Playgroud)
使用Y中的值对X进行排序以获得以下输出的最短方法是什么?
["a", "d", "h", "b", "c", "e", "i", "f", "g"]
Run Code Online (Sandbox Code Playgroud)
具有相同"密钥"的元素的顺序无关紧要.我可以使用for构造,但我很好奇是否有更短的方法.有什么建议?
运营商的正确名称是什么*,如function(*args)?解压缩,解压缩,其他什么?
我正在使用nltk语料库movie_reviews,其中有很多文档.我的任务是通过预处理数据获得这些评论的预测性能,而无需预处理.但是有问题,在列表documents和documents2我有同样的文件,我需要他们打乱,为了保持相同的顺序在这两个列表.我不能单独洗牌,因为每次我洗牌都会得到其他结果.这就是为什么我需要以相同的顺序对其进行一次洗牌,因为我需要在最后比较它们(这取决于顺序).我正在使用python 2.7
示例(实际上是字符串标记化,但它不是相对的):
documents = [(['plot : two teen couples go to a church party , '], 'neg'),
(['drink and then drive . '], 'pos'),
(['they get into an accident . '], 'neg'),
(['one of the guys dies'], 'neg')]
documents2 = [(['plot two teen couples church party'], 'neg'),
(['drink then drive . '], 'pos'),
(['they get accident . '], 'neg'),
(['one guys dies'], 'neg')]
Run Code Online (Sandbox Code Playgroud)
我需要在洗牌后得到这个结果:
documents = [(['one of the guys dies'], 'neg'),
(['they get into …Run Code Online (Sandbox Code Playgroud) 基本上我有两个数组,一个包含x轴的值,第二个包含y轴的值.问题是,当我这样做
plt.semilogy(out_samp,error_mc)
Run Code Online (Sandbox Code Playgroud)
我明白了
这没有任何意义.这是因为绘图函数绘制了在x数组中遇到的所有内容,而不是关心它是否按升序排序.我如何对这两个数组进行排序,以便通过增加值对y数组进行排序,并以相同的方式对y轴进行排序,使得点相同,但是连接的图是为了使它不会造成这种混乱?
先感谢您!
我有一个预定义的列表,表明一些值的顺序:
['id','name','age','height','weight',]
Run Code Online (Sandbox Code Playgroud)
(可能很长)
我想对此列表的任何子集进行排序:
所以,如果我得到['height','id']它将成为['id','height']
或['name','weight','height']--->['name','height','weight']
是否有某种方法可以sort使用key参数以某种方式使用该功能?或者我应该使用自定义方法,如果是这样,最有效的方法是什么?
嗨,我发现了同样的问题,但没有答案: 在这里输入链接说明
我的问题是我尝试使用matplotlib绘制数据,并连接第一个和最后一个数据点.我正在使用python27和Windows 7.我的问题只是要显示完整,所以我只显示源代码的一些部分.绘图功能如下:
def plot(x, aw,temperature):
plt.clf()
temperatureplot = plt.subplot(211)
awplot = plt.subplot(212)
temperatureplot.grid()
awplot.grid()
#set subplots
awplot.set_ylabel('water activity aw')
awplot.plot(x,aw)
awplot.margins(y=0.05) #adds a gap between maximum value and edge of diagram
temperatureplot.set_ylabel('Temperature in degree C')
temperatureplot.plot(x,temperature)
temperatureplot.margins(y=0.05)
awplot.set_xlabel('Time in [hm]')
plt.gcf().canvas.draw()
Run Code Online (Sandbox Code Playgroud)
我正在使用它,因为我在Tkinter Gui中绘制这个并且想要有时刷新它.情节如下:

我的价值观是:
t = [161000, 161015...., 191115]
aw = [0.618,......, 0.532]
temperature = [23.7,....,24.4]
Run Code Online (Sandbox Code Playgroud)
这是一个问题,我不是从t数组中的零开始?
如果有人提示或知道问题,请帮助我.
干杯最大
我正在使用plot(x,y)命令绘制图表,其中x和y是数组。在结果图表中,我有一条线连接的第一个点和最后一个点。如何避免连接的第一个点和最后一个点?
我正在使用 matplotlib python 库绘制两个列表。有两个数组x和y绘制时看起来像这样 -
使用的代码是这样的——
import matplotlib.pyplot as plt
plt.plot(x,y,"bo")
plt.fill(x,y,'#99d8cp')
Run Code Online (Sandbox Code Playgroud)
它绘制点,然后使用一条线连接这些点。但问题是它没有正确连接点。x 轴上的点 0 和 2 连接错误,而不是 1 和 2。同样在另一端,它连接点 17 到 19,而不是 18 到 19。我还尝试使用 - 绘制简单的折线图 -
plt.plot(x,y)
Run Code Online (Sandbox Code Playgroud)
但是,它也错误地连接了这些点。如果有人能指出我为什么会发生这种情况以及可以采取哪些措施来解决它,我将不胜感激。
谢谢!!
我想基于预先排序的列表在Python中对列表进行排序
presorted_list = ['2C','3C','4C','2D','3D','4D']
unsorted_list = ['3D','2C','4D','2D']
Run Code Online (Sandbox Code Playgroud)
有没有办法对列表进行排序以反映预先排序的列表,尽管事实并非排序列表中不存在所有元素?
我希望结果看起来像这样:
after_sort = ['2C','2D','3D','4D']
Run Code Online (Sandbox Code Playgroud)
谢谢!
你将如何lista根据项目的顺序排序sorter_list:
lista = [["John", "B3"],["Robert", "P3"], ["Thomas", "S2"]]
sorter_list = ["P3", "S2", "B3"]
Run Code Online (Sandbox Code Playgroud)
结果将是:
sorted_lista = [ ["Robert", "P3"], ["Thomas", "S2"], ["John", "B3"]]
Run Code Online (Sandbox Code Playgroud)
问候
我有一个关于改组的问题,但首先,这是我的代码:
from psychopy import visual, event, gui
import random, os
from random import shuffle
from PIL import Image
import glob
a = glob.glob("DDtest/targetimagelist1/*")
b = glob.glob("DDtest/distractorimagelist1/*")
target = a
distractor = b
pos1 = [-.05,-.05]
pos2 = [.05, .05]
shuffle(a)
shuffle(b)
def loop_function_bro():
win = visual.Window(size=(1280, 800), fullscr=True, screen=0, monitor='testMonitor', color=[-1,-1,-1], colorSpace='rgb')
distractorstim = visual.ImageStim(win=win,
image= distractor[i], mask=None,
ori=0, pos=pos1, size=[0.5,0.5],
color=[1,1,1], colorSpace='rgb', opacity=1,
flipHoriz=False, flipVert=False,
texRes=128, interpolate=True, depth=-1.0)
targetstim= visual.ImageStim(win=win,
image= target[i], mask=None,
ori=0, pos=pos2, size=[0.5,0.5],
color=[1,1,1], colorSpace='rgb', opacity=1, …Run Code Online (Sandbox Code Playgroud) 我有两个列表,它们的值与彼此的位置匹配。所以乔恩的分数是 123,比德的分数是 11,依此类推。
name = ["Jon", "Bede", "Joe"]
score = [123, 11, 43]
Run Code Online (Sandbox Code Playgroud)
如何对列表进行排序,以便它输出最小的分数,然后升序到最高的分数,每次输出得分的人的姓名。