我有数据框,即InputDataframeclasssectionsubmarksschoolcity0IAEng80jghsssalem1IAMat90jghsssalem2IAEng50Nansalem3IIIAEng80gphssNan4IIIAMat45Nansalem5IIIAEng40gphssNan6IIIAEng20gphsssalem7IIIAMat55gphssNan当“class”和“section”列中的值匹配时,我需要替换“school”和“city”中的“Nan”。结果应该是,输入数据框classsectionsubmarksschoolcity0IAEng
我是pandas的新手,正在尝试Pandas0.10.1版的Pandas10分钟教程。但是,当我执行以下操作时,出现如下所示的错误。printdf工作正常。为什么.loc不起作用?代码importnumpyasnpimportpandasaspddf=pd.DataFrame(np.random.randn(6,4),index=pd.date_range('20130101',periods=6),columns=['A','B','C','D'])df.loc[:,['A','B']]错误:AttributeErrorTraceback(mostrecentcalllast)in(
我有一个像这样的DataFrame:col1col210010000332004如果col2>0或0,我想添加一个为1的列,否则为0。如果我使用R,我会做类似的事情df1[,'col3']0,1,0)我如何在python/pandas中执行此操作? 最佳答案 您可以将bool系列df.col2>0转换为整数系列(True变为1和False变为0):df['col3']=(df.col2>0).astype('int')(要创建一个新列,您只需为其命名并将其分配给与您的DataFrame长度相同的系列、数组或列表。)这产生col3为:
假设我有一个这样的数据框:KnownvalueABCDEFGH17.34130000000033.453400000000我想做的是,当已知值在0-10之间时,A从0变为1。当已知值在10-20之间时,B从0变为1,依此类推。改完之后应该是这样的:KnownvalueABCDEFGH17.34130100000033.453400010000有人知道如何应用一种方法来改变它吗? 最佳答案 我首先将Knownvalue系列放入一个等于其截断值除以10的整数列表中(例如27.87//10=2)。这些桶表示所需列位置的整数。因为Known
我有一个基本的Python问题。我有一个像这样的Pandas数据框:ID|Name|User_id---+------+--------1John102Tom113Sam124Ben135Jen106Tim117Sean148Ana159Sam1210Ben13我想获取具有相同User_id值的名称和用户ID,而不返回出现两次的名称。所以我希望输出看起来像这样:JohnJen10TomTim11 最佳答案 IIUC你可以这样做,groupbyon'User_id'然后过滤groupby:In[54]:group=df.groupby
我有一个包含大约100列的数据框,如下所示:IdEconomics-1English-107English-2History-3Economics-zzEconomics-2\05611010011100001026001001343000101414010010HistoEconomics-51Literature-reLiteratureu40101010001200003011041000我的目标是只保留全局类别——英语、历史、文学——并分别在此数据框中写入它们的组件值的总和。例如,“English”将是“English-107”和“English-2”的总和:IdEconomi
我正在努力使用多线程来计算购物篮中有不同购物项目的客户列表之间的相关性。所以我有一个包含1,000个客户的pandas数据框,这意味着我必须计算相关性100万次,这需要很长时间才能处理数据框的示例如下所示:IDItem1Banana1Apple2Orange2Banana2Tomato3Apple3Tomato3Orange这是代码的简化版本:importpandasaspddefrelatedness(customer1,customer2):#dosomecalculationstomeasuretherelationbetweenthecustomersdata=pd.read_
我有以下数据框:df=pd.DataFrame(['Male','Female','Female','Unknown','Male'],columns=['Gender'])我想将其转换为包含“男性”、“女性”和“未知”列的DataFrame,值0和1表示性别。GenderMaleFemaleMale10Female01....为此,我编写了一个函数并使用map调用该函数。defisValue(x,value):if(x==value):return1else:return0forvalueindf['Gender'].unique():df[str(value)]=df['Gende
我正在从csv文件导入数据框,但无法按名称访问其中的某些列。怎么回事?更具体地说:>importpandas>jobNames=pandas.read_csv("job_names.csv")>print(jobNames)job_idjob_namenum_judgements0933985Foo1801933130Moo1752933123Goo1503933094Flue1204933088Tru120当我尝试访问第二列时,出现错误:>jobNames.job_nameAttributeError:'DataFrame'objecthasnoattribute'job_name'
我有以下数据框:data=pd.DataFrame({'user_id':['a1','a1','a1','a2','a2','a2','a3','a3','a3'],'product_id':['p1','p1','p2','p1','p1','p1','p2','p2','p3']})product_iduser_idp1a1p1a1p2a1p1a2p1a2p1a2p2a3p2a3p3a3在实际情况下可能还有其他一些列,但我需要做的是按数据框按product_id和user_id列分组并计算每个组合的数量并将其添加为新数据框中的新列输出应该是这样的:user_idproduct_i