【python-浮动到百分比样式错误的Pandas dataframe列】教程文章相关的互联网学习教程文章

Python:如何正确处理熊猫DataFrame中的NaN,以在Scikit-learn中进行功能选择【代码】

这与我发布的here问题有关,但是这个问题更具体,更简单. 我有一个pandas DataFrame,其索引是唯一的用户标识符,列对应于唯一的事件,并且值1(有人值守),0(未出席)或NaN(未邀请/不相关).相对于NaN,矩阵非常稀疏:有数百个事件,大多数用户最多只被邀请参加几十个事件. 我创建了一些额外的列来衡量“成功”,我将其定义为相对于邀请仅出席的百分比:my_data['invited'] = my_data.count(axis=1) my_data['attended'] = my_data.sum(axis=1...

python-如何检查几个pandas DataFrame.Series元素的条件并将结果应用于新列?【代码】

我有一个pandas.Dataframe.df = pandas.DataFrame([(11,12,13),(1,3,5),(1,1,2)], columns=['a','b','c'])a b c 0 11 12 13 1 1 3 5 2 3 1 2我想创建一个名为d的第四列,它告诉我一行中的每个元素是否大于10.在这个示例中,它看起来像这样.a b c d 0 11 12 13 True 1 1 3 5 False 2 3 1 2 False我试过了,这给了我TypeError.x = df['a'] y = df['b'] z = df['c'] df['d'] = df.apply(...

python-DataFrame列的一个元素与所有其他元素之间的比较【代码】

我有一个元组列表,我将其变成了具有数千行的DataFrame,如下所示:frag mass prot_position 0 TFDEHNAPNSNSNK 1573.675712 2 1 EPGANAIGMVAFK 1303.659458 29 2 GTIK 417.258734 2 3 SPWPSMAR 930.438172 44 4 ...

Python 3.4:Pandas DataFrame不响应有序字典【代码】

我正在使用有序词典填充DataFrame,但是pandas DataFrame是按字母顺序组织列. 码labels = income_data[0:-1:4]year1 = income_data[1:-1:4]key = eachTickervalue = OrderedDict(zip(labels, year1))full_dict[key] = valuedf = pd.DataFrame(full_dict)print(df)如您所见,full_dict是来自多个列表的压缩字典,即:标签和year1 full_dict的输出print(full_dict) OrderedDict([('AAPL', OrderedDict([('Total Revenue', 182795000), (...

python-从DataFrames字典创建DataFrame【代码】

我有一个DataFrames字典,其中的键被认为是有意义的:In [32]: x = pd.DataFrame(dict(foo=[1,2,3], bar=[4,5,6])).set_index('foo') In [33]: y = pd.DataFrame(dict(foo=[7,8,9], bar=[10,11,12])).set_index('foo') In [34]: z = dict(x=x, y=y)看起来像:In [43]: x Out[43]: bar foo 1 4 2 5 3 6In [44]: y Out[44]: bar foo 7 10 8 11 9 12有没有一种很好的方法来获取以下DataFrame:fo...

python-根据列的值在DataFrame中填充NaN【代码】

我的数据类似于以下简化示例:Col1 Col2 Col3 a A 10.1 b A NaN d B NaN e B 12.3 f B NaN g C 14.1 h C NaN i C NaN…数千行我需要基于Col2中的值来填充,并使用类似于填充方法的方法.我正在寻找的结果是这样的:Col1 Col2 Col3 a A 10.1 b A 10.1 d B NaN e B ...

python-DataFrame的最大值和第二最大值之间的差异【代码】

我有一个DataFrame,我希望将DataFrame的最大值和第二最大值之间的差作为新列附加到DataFrame作为输出. 例如,数据框如下所示(这是一个巨大的DataFrame):gene_id Time_1 Time_2 Time_3 a 0.01489251 8.00246 8.164309 b 6.67943235 0.8832114 1.048761到目前为止,我尝试了以下方法,但只是采用标题,largest = max(df) second_largest = max(item for item in df if item < largest)并单独返回标头值.解决方法:您可以定义...

python-在DataFrame中折叠具有重复索引值的条目【代码】

import pandas as pd bids = [100, 101, 101, 102] offers = [101, 102, 102.25, 103] data = {'bids': bids, 'offers': offers} index = [0, 1, 1, 2] df = pd.DataFrame(data=data, index=index) print dfbids offers 0 100 101.00 1 101 102.00 1 101 102.25 2 102 103.00如何重新索引df,以便使用每列中给定索引的最新值?在此示例中,我希望索引1具有[101,102.25]解决方法:您可以先呼叫reset_index,然后再呼叫drop...

Python中检查对象属性是否分配了DataFrame的最有效方法?【代码】

我试图建立一个类中所有属性的名称列表,这些类要么是pandas DataFrames,要么是Series. 以下工作有效,但似乎很慢,因为它遍历了dir()列出的每个属性,包括特殊方法(这些特殊方法不会是DataFrames,因此不需要检查它们).它似乎也可以用其他方法执行print语句,因此不确定是否正在运行其他属性(不需要).my_instance = MyClass() pd_objects = [attr for attr in dir(my_instance) if isinstance(getattr(my_instance, attr), pd.DataFrame...

python-使用多个DataFrame在熊猫中的时间偏移【代码】

我有两个熊猫数据框: 一个称为sdtarray的浮点数(代表秒):z1 z2 z3 ... 0 NaN NaN NaN 1 2.6 3.4 63.0 2 NaN NaN NaN 3 0.1 1.1 60.7 4 4.7 5.2 64.9 5 0.1 0.6 61.1 ... [33945 rows x 95 columns]另一个格式化日期(thenewtime):0 2014-09-01 05:22:00 1 2014-09-01 05:38:00 2 2014-09-01 06:08:00 3 2014-09-01 06:27:00 4 2014-09-01 06:37:00 5 2014-09-01 06:57:00 ... Name: thenewtime...

python-如何更正Pandas DataFrame中的拼写【代码】

使用TextBlob库,可以通过先将字符串定义为TextBlob对象,然后再使用正确的方法来改善字符串的拼写. 例:from textblob import TextBlob data = TextBlob('Two raods diverrged in a yullow waod and surry I culd not travl bouth') print (data.correct()) Two roads diverged in a yellow wood and sorry I could not travel both是否可以对像这样的Pandas DataFrame系列中的字符串执行此操作:data = [{'one': '3', 'two': 'two ...

python-将多索引DataFrame的行合并为逗号分隔的列表【代码】

给定一个多索引DataFrame,我想组合重复的索引对并将其值列出为逗号分隔的列表.例如,输入:df = pd.DataFrame({'Last Name' : ['Deere','Deere','Foo' ,'Foo' ,'Man' ],'First Name': ['John' ,'Jane' ,'Kung' ,'Kung' ,'Karate'],'Value1': [ 1 , 2 , 3 , 4 , 5 ],'Value2': ['Green','Blue' ,'Yellow','Black','Purple']})df.set_index(['Last Name','First Name'],inplace=True)提供:Value...

python-如何避免“试图在DataFrame的切片副本上设置值”?【代码】

我有一个数据框df_original:a b 0 10 5 1 12 6 2 14 1现在,我想制作一个包含所有行的新数据框,其中c> 5,然后在此新数据帧上设置新的列值:df = df_original[df_original['b'] > 5] df['c'] = df['a'] / df['b']但是我得到一个警告:/Library/Python/2.7/site-packages/ipykernel/__main__.py:25: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame.Try using .l...

python-使用NaN的DataFrame逻辑运算【代码】

我正在尝试在熊猫DataFrame中进行一些比较.# create simple DataFrame df = DataFrame(['one', 'two', 'three'], range(1,4), columns=['col1']) # assign one col1 value to be NAN df.loc[1, col1] = np.nan # this comparison works print df['col1'] == 'three' # assign all col1 values to NAN df.loc[:, 'col1'] = np.nan # this comparison fails print df['col1'] == 'three'第一个比较(该列中只有一个NAN值)按预期方式工...

python-使用带有lambda函数的DataFrame.apply将返回的元组/列表分配给多个列【代码】

我有一个函数,它接受一个输入并返回两个值的列表def my_func(x):return [x+1, x+2]说我有一个简单的数据框df = pd.DataFrame({'x':[1,2,3,4,5]})我想将my_func应用于列“ x”的每个值,然后将返回的值分别保存在列“ y”和列“ z”中,例如:(df['y'], df['z']) = df.apply(lambda row: my_func(row.x), axis = 1)显然,这是行不通的. 最好的方法是什么? 编辑:如下@Andy Hayden指出的,在这种情况下,我可以简单地使用df['y'], df['z'...

错误 - 相关标签