草庐IT

python - 查看 Spark Dataframe 列的内容

我使用的是Spark1.3.1。我正在尝试在Python中查看Spark数据框列的值。使用Spark数据框,我可以执行df.collect()来查看数据框的内容,但是据我所知,对于Spark数据框列没有这样的方法。例如,数据帧df包含名为'zip_code'的列。所以我可以做df['zip_code']并变成pyspark.sql.dataframe.Column类型,但我找不到查看值的方法df['zip_code']. 最佳答案 您可以访问底层RDD并对其进行映射df.rdd.map(lambdar:r.zip_code).col

python - 具有多索引列的 Pandas 数据框 - 合并级别

我有一个数据框,grouped,多索引列如下:importpandasaspdcodes=["one","two","three"];colours=["black","white"];textures=["soft","hard"];N=100#lengthofthedataframedf=pd.DataFrame({'id':range(1,N+1),'weeks_elapsed':[random.choice(range(1,25))foriinrange(1,N+1)],'code':[random.choice(codes)foriinrange(1,N+1)],'colou

python - 如何重新采样具有应用于每列的不同函数的数据框?

我在pandasdataframe中有温度和辐射的时间序列。时间分辨率为1分钟,以常规步长。importdatetimeimportpandasaspdimportnumpyasnpdate_times=pd.date_range(datetime.datetime(2012,4,5,8,0),datetime.datetime(2012,4,5,12,0),freq='1min')tamb=np.random.sample(date_times.size)*10.0radiation=np.random.sample(date_times.size)*10.0frame=pd.Dat

python - 更改 Pandas 中日期时间列的时区并添加为分层索引

我有带有UTC时间戳的数据。我想将此时间戳的时区转换为“美国/太平洋”,并将其作为分层索引添加到pandasDataFrame。我已经能够将时间戳转换为索引,但是当我尝试将它作为列或索引添加回DataFrame时,它​​会丢失时区格式。>>>importpandasaspd>>>dat=pd.DataFrame({'label':['a','a','a','b','b','b'],'datetime':['2011-07-1907:00:00','2011-07-1908:00:00','2011-07-1909:00:00','2011-07-1907:00:00','2011-07

python - 如何对csv表中的数据进行行到列的转置?

我是脚本新手。我有一个表(Table1.txt),我需要创建另一个表,其中Table1的行按列排列,反之亦然。我找到了Perl和SQL的解决方案,但Python没有。我前两天刚开始学习Python,所以就到这里了:importcsvimportsyswithopen(sys.argv[1],"rt")asinputfile:readinput=csv.reader(inputfile,delimiter='\t')withopen("output.csv",'wt')asoutputfile:writer=csv.writer(outputfile,delimiter="\t")for

python - Pandas 数据框中整个列的子字符串

我有一个Pandas数据框“df”。在这个数据框中,我有多个列,其中一个我必须子串。假设列名是“col”。我可以像下面那样运行“for”循环并将列子字符串化:foriinrange(0,len(df)):df.iloc[i].col=df.iloc[i].col[:9]但我想知道,如果有一个选项我不必使用“for”循环,而是直接使用属性来执行。我有大量数据,如果我这样做,数据将需要很长时间。 最佳答案 使用带方括号的str访问器:df['col']=df['col'].str[:9]或str.slice:df['col']=df['

python - 在 Pandas 中,如何在不添加新列的情况下重置索引?

In[37]:df=pd.DataFrame([[1,2,3,4],[2,3,4,5],[3,4,5,6]])In[38]:df2=pd.concat([df,df])In[39]:df2.reset_index()Out[39]:index0123001234112345223456301234412345523456我的问题是如何在不添加新列index的情况下reset_index? 最佳答案 您可以在reset_index()中使用drop=True选项。见here. 关于pyth

python - 如何在 pandas 中查询 MultiIndex 索引列的值

代码示例:In[171]:A=np.array([1.1,1.1,3.3,3.3,5.5,6.6])In[172]:B=np.array([111,222,222,333,333,777])In[173]:C=randint(10,99,6)In[174]:df=pd.DataFrame(zip(A,B,C),columns=['A','B','C'])In[175]:df.set_index(['A','B'],inplace=True)In[176]:dfOut[176]:CAB1.111120222313.322224333655.5333226.677774现在,我要检索A值:

python - 两个 Pandas 列的字符串连接

我有以下DataFrame:frompandasimport*df=DataFrame({'foo':['a','b','c'],'bar':[1,2,3]})看起来像这样:barfoo01a12b23c现在我想要类似的东西:bar01isa12isb23isc我怎样才能做到这一点?我尝试了以下方法:df['foo']='%sis%s'%(df['bar'],df['foo'])但它给了我一个错误的结果:>>>printdf.ix[0]barafoo0a1b2cName:baris01122Name:0很抱歉提出一个愚蠢的问题,但这是一个pandas:combinetwocolumns

Python Pandas为选定列的逐行最大值添加列

这个问题在这里已经有了答案:Findthemaxoftwoormorecolumnswithpandas(4个回答)关闭3年前.data={'name':['bill','joe','steve'],'test1':[85,75,85],'test2':[35,45,83],'test3':[51,61,45]}frame=pd.DataFrame(data)我想添加一个显示每行最大值的新列。想要的输出:nametest1test2test3HighScorebill75758585joe35458383steve51614561有时frame['HighScore']=max(dat