草庐IT

pyspark-dataframes

全部标签

python Pandas : Merge two tables without keys (Multiply 2 dataframes with broadcasting all elements; NxN dataframe)

我想合并2个具有广播关系的数据帧:没有公共(public)索引,只想找到2个数据框中的所有行对。所以想要制作N行数据框xM行数据框=N*M行数据框。是否有任何规则可以在不使用itertool的情况下实现这一点?DF1=idquantity01201223DF2=namepart0'A'31'B'42'C'5DF_merged=idquantitynamepart0120'A'31120'B'42120'C'53223'A'34223'B'45223'C'5 最佳答案 您可以在DataFrames和merge中使用辅助列tmp填充1在

python - PySpark:写入时吐出单个文件而不是多个部分文件

有没有办法阻止PySpark在将DataFrame写入JSON文件时创建多个小文件?如果我运行:df.write.format('json').save('myfile.json')或df1.write.json('myfile.json')它创建了名为myfile的文件夹,我在其中找到了几个名为part-***的小文件,采用HDFS方式。是否可以通过任何方式让它吐出一个文件? 最佳答案 嗯,您的确切问题的答案是coalesce函数。但正如已经提到的那样,它根本没有效率,因为它会迫使一个工作人员获取所有数据并按顺序写入。df.coa

python - 将 pandas Dataframe 列映射到字典值

我有一个one:many字典。我想将pandasDataframe列的值映射到字典的键(不是值)。这是我的词典:dict1={'fruits':('apple','grapes','oranges'),'food':('fish','meat','fibre')}这是pandas系列对象:df=pd.Series(['fish','apple','meat'])我想要的期望输出:0food1fruits2fooddtype:object 最佳答案 如果“其他”同时出现在“水果”和“食物”中怎么办?这就是为什么在没有某种逻辑来解决重复

python - 将 pandas DataFrame 与 Series 进行比较

我看过this和this到目前为止的问题,但他们并没有真正帮助我解决我的问题。这个问题很简单,但有点难以用语言表达。我有一个Dataframe,它是这样的矩阵:Stock1Stock2Date134Date214对于作为我的索引的每个日期,我想将值与系列中的单个点进行比较。像这样的系列:ValueDate12Date23我想通过类似DataFrame>Series的比较构建以下DataFrameStock1Stock2Date1TrueTrueDate2FalseTrue所以对于Date1,两个值都大于2,而对于Date2,只有Stock2大于3。提前致谢

python - 如何在 Pandas 的 .csv 文件中写入 DataFrame 时删除索引列?

这个问题在这里已经有了答案:Pandasto_csvcallisprependingacomma(1个回答)关闭5年前。我的DataFrame包含名为“a”、“b”的两列。现在,当我创建此DataFrame的csv文件时:df.to_csv('myData.csv')当我在excel文件中打开它时,有一个带有索引的额外列出现在列“a”和“b”旁边,但我不想要那个。我只希望列“a”和“b”出现在Excel工作表中。有什么办法吗?

python - ts.plot() 和 dataFrame.plot() 抛出错误 : "NameError: name ' _converter' is not defined"

运行数据框或系列的plot()方法时,python会抛出错误。错误的最后一行是NameError:name'_converter'isnotdefined我使用的是Python3.6,所有其他功能都按预期工作,所以不确定是什么原因造成的。下面是导致问题的代码示例,下面是导致的错误。importpandasaspdimportnumpyasnpimportmatplotlibimportmatplotlib.pyplotaspltts=pd.Series(np.random.randn(1000),index=pd.date_range('1/1/2000',periods=1000))

python - 重采样多索引 DataFrame

我要resampleaDataFrame具有包含日期​​时间列和其他一些键的多索引。数据框看起来像:importpandasaspdfromStringIOimportStringIOcsv=StringIO("""ID,NAME,DATE,VAR11,a,03-JAN-2013,691,a,04-JAN-2013,771,a,05-JAN-2013,752,b,03-JAN-2013,692,b,04-JAN-2013,752,b,05-JAN-2013,72""")df=pd.read_csv(csv,index_col=['DATE','ID'],parse_dates=['DA

python - Pandas Dataframe CSV 导出,如何防止额外的双引号字符

我正在使用Pandas处理和输出在Wordpress中发布的表格的数据我正在添加HTML代码来格式化颜色一列从示例Dataframe开始:importnumpyasnpimportpandasaspddf=pd.DataFrame({'A':['group1','group2','group3'],'B':['foo','foo','foo']})打印dfAB0group1foo1group2foo2group3foo然后我将相同的格式代码添加到每一行,如下所示:df['Status']='Active'printdfABStatus0group1fooActive1group2foo

python Pandas : replace values multiple columns matching multiple columns from another dataframe

我搜索了很多答案,最接近的问题是Compare2columnsof2differentpandasdataframes,ifthesameinsert1intotheotherinPython,但是这个人的特定问题的答案是一个简单的合并,它不能以一般方式回答问题。我有两个大型数据框,df1(通常约1000万行)和df2(约1.3亿行)。我需要根据两个df1列匹配两个df2列,用df2三列的值更新df1三列中的值。df1的顺序必须保持不变,并且只有具有匹配值的行才会更新。这是数据框的样子:df1chrsnpxposa1a211-10020010020GA11-10056010056CG1

python - 基于列的整个 DataFrame 上的 df.unique()

我有一个DataFramedf填充了有重复ID的行和列:IndexIdType0a1A1a2A2b1B3b3B4a1A...当我使用时:uniqueId=df["Id"].unique()我得到一个唯一ID列表。但是,我如何在整个DataFrame上应用此过滤,以使其保留结构但删除重复项(基于“Id”)? 最佳答案 看来你需要DataFrame.drop_duplicates使用参数subset指定测试重复项的位置:#keepfirstduplicatevaluedf=df.drop_duplicates(subset=['Id']