【python – 查找非零元素的索引并按值分组】教程文章相关的互联网学习教程文章

将列表索引拆分为新列表python【代码】

我有一个使用python进行编程实验室的介绍.我想拆分一个列表:items = ['40/40', '10/40', '30/40', '4/5', '18/40', '40/40', '76/80', '10/10']分为两个新列表:items_1 = ['40','10','30','4','18','40','76','10']items_2 = ['40','40','40','5','40','40','80','10']任何帮助表示赞赏.解决方法:我建议是这样的:items = ['40/40', '10/40', '30/40', '4/5', '18/40', '40/40', '76/80', '10/10'] items_1 = list() items_2 = l...

python-使用.all()和any()获取搜索数组的索引【代码】

我有数组列表,我正在使用.all()和.any()来检查数组即时搜索是否在数组列表中.t = np.array([[1,2,3], [4,5,6] , [7,8,9], [10, 11, 12]])t2 = np.array([1,2,3])print((t == t2).all(1)) outpu:> [ True False False False]在这里我可以检查t2是否在t中print((t == t2).all(1).any()) outpu:> True我的问题是我可以通过.all和.any方法获取t2在t中存在什么索引吗?解决方法:您正在寻找np.flatnonzero或np.where.>>> np.flatnonzero(...

python-NumPy-捕获前三个连续负数的索引【代码】

我需要找到三个连续负数首次出现的索引.以普通的Python方式,我会这样做:a = [1,-1,1,-1,1,-1,1,-1,-1,-1,1,-1,1] b=0 for i,v in enumerate(a):if v<0:b+=1else:b=0if b==3:break indx = i-2任何人都知道如何以更智能的NumPy方式进行操作?解决方法:这是在卷积帮助下的矢量化解决方案-def first_consecutive_negative_island(a, N=3):mask = np.convolve(np.less(a,0),np.ones(N,dtype=int))>=Nif mask.any():return mask.argmax(...

python-通过索引pandas DataFrame提取单个值【代码】

我正在从熊猫数据框中调用一行row = df.iloc[[i]] customer.customer_id = row['billing_city']然后,当我调用`customer.billing_city时,会得到类似的输出4 Brooklyn Name: billing_address_city, dtype: object我只想拥有Booklyn用于创建对象等目的解决方法:使用df.iat访问单个项目.df.iat[i, df.columns.get_loc('billing_city')]使用iat的原因与使用iloc的原因相同.如果您的索引是整数,则没有关系,可以改用df.at. 还有loc项目...

python-熊猫合并并为重复的列创建一个多索引【代码】

我有两个数据框sessions = DataFrame({"ID":[1,2,3,4,5],"2018-06-30":[23,34,45,67,75],"2018-07-31":[32,43,45,76,57]}) leads = DataFrame({"ID":[1,2,3,4,5],"2018-06-30":[7,10,28,15,30],"2018-07-31":[7,10,28,15,30]})我想合并ID上的两个数据框,然后创建一个多索引,如下所示:我该怎么做? 直接的pandas.merge会创建我不想要的后缀_x,_y.解决方法:在两个DataFrame中将concat与ID一起使用set_index,然后将swaplevel与sort_i...

python-对pandas组执行按索引排序的更快方法【代码】

我有一个名称为(person_name),颜色为(shirt_color)的数据框每个人在特定的日子都穿某种颜色的衬衫(天数可以是任意的) 例如输入:name color ---------------- John White John White John Blue John Blue John White Tom Blue Tom Blue Tom Green Tom Black Jerry Black Jerry Blue Jerry Black我需要找到每个人穿的最好的彩色衬衫,根据best_color_order例如结果:name color --------...

python-动态建立索引以对熊猫中的记录进行分类【代码】

我正在尝试编写一个简单的记录分类器.我想添加一列,其值对记录进行分类.我想将分类规则编入Yaml或类似文件中,以进行维护. 我正在使用Pandas,因为这似乎是使用python中的csv记录执行此操作的最佳方法.我愿意接受其他建议.我是熊猫新手,我的python技能被礼貌地描述为“为什么看起来像perl?” 我已经获得一个数据框(反式),我想按如下方式应用规则: trans [‘class’] [(trans [‘foo’]> 5)& (trans [‘bar’].str.contains(re.comp...

python-pd.concat()不合并在同一索引上【代码】

我有一个包含称为fcst的预测的df,如下所示:yhat yhat_lower yhat_upper ds 2015-08-31 -0.443522 -19.067399 17.801234 2015-09-30 6.794625 -31.472186 46.667981 ...进行此转换后:fcst2 = fcst["yhat"].to_frame().rename(columns={"yhat":"test1"}) fcst3 = fcst["yhat"].to_frame().rename(columns={"yhat":"test2"})我想在日期索引上将它们串联起来:pd.concat([fcst2,fcst3])但是我收到一个未与...

python-熊猫,本地与非本地布尔索引【代码】

我所做的所有研究都指向使用loc作为通过col(s)值过滤数据帧的方法,今天我正在阅读this,并通过测试的示例发现,loc不是按其值过滤cols时需要: 例如:df = pd.DataFrame(np.arange(0, 20, 0.5).reshape(8, 5), columns=['a', 'b', 'c', 'd', 'e']) df.loc[df['a'] >= 15]a b c d e 6 15.0 15.5 16.0 16.5 17.0 7 17.5 18.0 18.5 19.0 19.5df[df['a'] >= 15]a b c d e 6 15.0 15.5 1...

python-通过列索引获取值,其中行是特定值【代码】

我有一个数据框sheet_overview:Unnamed: 0 Headline Unnamed: 2 Unnamed: 30 nan 1. 1. username Erik1 nan 1. 2. userage 232 nan 1. 3. favorite ice我想通过查找“ 1. 2”来获得值23.在第二栏中.如果不想查看列名,则必须使用索引.我的问题是,如果我的方法太复杂了. 它可以工作,但似乎太多了,但不是很Pythonic:age = sheet_overview.iloc[sheet_overview[sheet_...

python-将空的熊猫数据框与多索引数据框联接【代码】

我想循环构建一个大熊猫DataFrame.在第一次迭代中,DataFrame df1仍然为空.当我将df1与具有MultiIndex的df2加入时,索引会以某种方式被压缩.df1 = pd.DataFrame(index=range(6)) df2 = pd.DataFrame(np.random.randn(6, 3),columns=pd.MultiIndex.from_arrays((['A','A','A'], ['a', 'b', 'c']))) df1[df2.columns] = df2df1(A, a) (A, b) (A, c) 0 -0.673923 1.392369 1.848935 1 1.427368 0.042691 0.130962 2 -0.25858...

python-使用.loc访问多索引数据框时如何保留列顺序?【代码】

让我们得到以下具有多索引列的数据框import numpy as np import pandas as pd a = ['i', 'ii'] b = list('abc') mi = pd.MultiIndex.from_product([a,b]) df = pd.DataFrame(np.arange(100,100+len(mi)*3).reshape([-1,len(mi)]), columns=mi) print(df) # i ii # a b c a b c # 0 100 101 102 103 104 105 # 1 106 107 108 109 110 111 # 2 112 113 114 115 116 117我使用....

python-查找其中一个数组大于第二个数组中的元素的索引【代码】

我有两个数组a = np.array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]) b = np.array([0,5,10,15])我想要一个长度为b的输出数组,其中每个元素b [i]是a的第一个元素的索引,其至少为b [i]:out = np.array([0, 5, 10, 15]一个较慢的解决方案是:out = [] for x in b: i = np.argmax( a >= x )out.append( i )这是边际速度增加:out = [] i=0 for x in b: i = np.argmax( a[i:] >= x ) + iout.append( i )有一个纯粹的numpy解决方案...

用坐标列表索引二维数组的Python方法【代码】

我有numpy.ndarray类和尺寸(200,2)的坐标.基本上是regionprops的输出. 我想索引昏暗的img.shape =(1000,1000)的图像矩阵(也是ndarray).我希望能够做类似的事情for prop in region:img[prop.coords] = 0但是,发生的是,它没有将坐标视为行,列对.而是将每个数字作为行号并将整个行设置为0. 我怎样才能解决这个问题? 我试图重塑数组,但这似乎也不起作用.我唯一能想到的就是将这些索引转换为矩阵,该矩阵的尺寸与图像尺寸相同,并且这些坐...

python-行中的熊猫层次结构索引【代码】

我认为这应该是一个小问题,但是我无法找到解决方案. 假设您有以下DFpd.DataFrame({'Math_0':[1,2,6,'math'],'Math_1':[8,3,7,'math'],'science_0':[9,5,2,'science']},index=['Jeff','Bob','Cal','Category']) df >>>M0 M1 S1 Jeff 1 8 9 Bob 2 3 5 Cal 6 7 2 Subj math math science我想按索引行“ Subj”分组以创建一个层次索引反过来,结果数据框看起来像df ...

分组 - 相关标签
元素 - 相关标签