草庐IT

python - 从 pandas 列中删除非 ASCII 字符

一段时间以来,我一直在努力解决这个问题。我试图从DB_user列中删除非ASCII字符,并尝试用空格替换它们。但我不断收到一些错误。这是我的数据框的样子:+-----------------------------------------------------------|DB_usersourcecount|+-----------------------------------------------------------|???/"Ò|Z?)?]??C%??JA10||?D$ZGU;@D??_???T(?)B3||?Q`H??M'?Y??KTK$?Ù‹???ЩJL4??*?

python - PySpark 将列中的空值替换为其他列中的值

我想用相邻列中的值替换一列中的空值,例如,如果我有A|B0,12,null3,null4,2我希望它是:A|B0,12,23,34,2尝试过df.na.fill(df.A,"B")但是没有用,它说值应该是一个float、整数、长整型、字符串或字典有什么想法吗? 最佳答案 我们可以使用coalescefrompyspark.sql.functionsimportcoalescedf.withColumn("B",coalesce(df.B,df.A)) 关于python-PySpark将列

python - Pandas 数据框条件 .mean() 取决于特定列中的值

我正在尝试创建一个新列,它返回同一df中现有列的值的平均值。但是,应根据其他三个列中的分组来计算平均值。Out[184]:YEARdaytypehourtypescenariooption_value02015SATof_h00.13449912015SUNof_h163.01925022015WDof_h252.11351632015WDpk_h343.12651342015SATof_h456.431392当“YEAR”、“daytype”和“hourtype”相似时,我基本上想要一个新列“mean”来计算“optionvalue”的平均值。我尝试了以下方法但没有成功......I

python - 在数据框列中应用模糊匹配并将结果保存在新列中

我有两个数据框,每个数据框都有不同的行数。下面是每个数据集的几行df1=CompanyCityStateZIPFREDDIELEESAMERICANGOURMETSAUCESt.LouisMO63101CITYARCHRIVER2015FOUNDATIONSt.LouisMO63102GLAXOSMITHKLINECONSUMERHEALTHCARESt.LouisMO63102LACKEYSHEETMETALSt.LouisMO63102和df2=FDACompanyFDACityFDAStateFDAZIPLACKEYSHEETMETALSt.LouisMO63102PRIMUSS

python - 在 pandas python 列中获取非数字行

我查看了这篇文章:findingnon-numericrowsindataframeinpandas?但它并没有真正回答我的问题。我的示例数据:importpandasaspdd={'unit':['UD','UD','UD','UD','UD','UD'],'N-D':['Q1','Q2','Q3','Q4','Q5','Q6'],'num':[-1.48,1.7,-6.18,0.25,'sum(d)',0.25]}df=pd.DataFrame(d)看起来像这样:N-Dnumunit0Q1-1.48UD1Q21.70UD2Q3-6.18UD3Q40.25UD4Q5sum(d)UD5

python - 将 Pandas 列中的日期时间格式化为季度

我有一个DataFrame,其中包含DateTime索引中的列,代表季度,例如:2000-03-3100:00:00如何将其转换为'2000q1'?我查看了文档,但他们只提到了DateTimeIndex.quarterformat='%Y%q'不起作用。选项on='%Y%q也没有 最佳答案 您可以使用to_period("Q"):df.index=df.index.to_period("Q")importpandasaspddf=pd.DataFrame({"y":[1,2,3]},index=pd.to_datetime(["20

python - 剥离 Pandas 数据框列中的所有尾随空格

我有一个pandasDF,它有很多string元素,其中包含这样的词:'Frost'它前面有许多前导空白。当我将这个字符串与:'Frost'我意识到由于前导空格,比较是False。虽然我可以通过遍历pandasDF的每个元素来解决这个问题,但由于我有大量记录,这个过程很慢。这种其他方法应该有效,但它不起作用:rawlossDF['damage_description']=rawlossDF['damage_description'].map(lambdax:x.strip(''))所以当我检查一个元素时:rawlossDF.iloc[0]['damage_description']它返

python - 根据一列中的值屏蔽二维 numpy 数组

假设我有以下numpy数组:a=[[1,5,6],[2,4,1],[3,1,5]]我想屏蔽所有在第一列中有1的行。也就是我要[[--,--,--],[2,4,1],[3,1,5]]这可以使用numpy掩码数组操作来完成吗?怎么做到的?谢谢。 最佳答案 importnumpyasnpa=np.array([[1,5,6],[2,4,1],[3,1,5]])np.ma.MaskedArray(a,mask=(np.ones_like(a)*(a[:,0]==1)).T)#Returns:masked_array(data=[[-----

python - SqlAlchemy 不接受 DateTime 列中的 datetime.datetime.now 值

我应该首先提到我通过Flask-SqlAlchemy使用SqlAlchemy。我认为这不会影响问题,但如果有影响,请告诉我。这是我在SqlAlchemy中运行create_all函数时收到的错误消息的相关部分InterfaceError:(InterfaceError)错误绑定(bind)参数4-可能是不支持的类型。u'INSERTINTOpodcasts(feed_url,title,url,last_updated,feed_data)VALUES(?,?,?,?,?)'(u'http://example.com/feed',u'PodcastShowTitle',u'http:/

Python Pandas 如果 B 列中的值 = 等于 [X, Y, Z] 将 A 列替换为 "T"

假设我有这个数组:A,B1,G2,X3,F4,Z5,I如果B列等于[X,Y或Z],则将A列替换为值“T”我已经找到了如何在同一列内更改值但不跨列更改值的方法,我们将不胜感激任何帮助。 最佳答案 你可以试试这个:importpandasaspddf=pd.DataFrame({'A':[1,2,3,4,5],'B':['G','X','F','Z','I']})df.ix[df.B.isin(['X','Y','Z']),'A']='T'printdf输出:AB01G1TX23F3TZ45I请记住使用ix或loc以避免在复制的切片上设