小编Man*_*ani的帖子

将数据框字典合并为 1 个单个数据框

我正在寻找一种解决方案,将字典中的所有数据帧放入 1 个巨大的数据帧中。我对 Python 比较陌生,所以我无法理解如何遍历字典并将所有数据帧放入 1。到目前为止我已经实现的代码如下:

import sys
from ftplib import FTP
import os
import socket
import time
import pandas as pd
import numpy as np
from glob import glob

path = 'path_to_file'

files = glob(path + '/*Mail*.xlsx')

print files

get_df = lambda f: pd.read_excel(f, sheetname=None)

dodf = {f: get_df(f) for f in files}  ### dictionary of dataframes
Run Code Online (Sandbox Code Playgroud)

现在,我需要将所有不同的数据帧放入 1 个数据帧中,然后对其进行操作。任何建议将不胜感激。

我试过这个,

for df in dodf:
pd.concat(dodf.values(), ignore_index=True)
Run Code Online (Sandbox Code Playgroud)

但它似乎不能正常工作。

python dictionary pandas

8
推荐指数
2
解决办法
8202
查看次数

在Python中从FTP文件夹获取最新文件(文件名包含空格)

我有一个要求,我必须从FTP文件夹中提取最新的文件,问题是文件名有空格,文件名具有特定的模式.以下是我实施的代码:

import sys
from ftplib import FTP
import os
import socket
import time
import pandas as pd
import numpy as np
from glob import glob
import datetime as dt
from __future__ import with_statement

ftp = FTP('')
ftp.login('','')
ftp.cwd('')
ftp.retrlines('LIST')

filematch='*Elig.xlsx'
downloaded = []

for filename in ftp.nlst(filematch):
  fhandle=open(filename, 'wb')
  print 'Getting ' + filename
  ftp.retrbinary('RETR '+ filename, fhandle.write)
  fhandle.close()
  downloaded.append(filename)

ftp.quit()
Run Code Online (Sandbox Code Playgroud)

我知道我可以在ftp.dir()命令中添加一个空列表,但由于文件名有空格,我无法以正确的方式拆分它并选择我上面提到的类型的最新文件.

任何帮助都会很棒.

python ftplib python-2.7

7
推荐指数
1
解决办法
1256
查看次数

Pandas数据帧为动态嵌套JSON

我想创建我的数据框,如下所示:

    employeeId  firstName   lastName    emailAddress    isDependent employeeIdTypeCode  entityCode  sourceCode  roleCode
0   E123456 Andrew  Hoover  hoovera@xyz.com False   001 AE  AHR EMPLR
0   102939485   Andrew  Hoover  hoovera@xyz.com False   002 AE  AHR EMPLR
2   E123458 Celeste Riddick riddickc@xyz.com    True    001 AE  AHR EMPLR
2   354852739   Celeste Riddick riddickc@xyz.com    True    002 AE  AHR EMPLR
1   E123457 Curt    Austin  austinc1@xyz.com    True    001 AE  AHR EMPLR
1   675849302   Curt    Austin  austinc1@xyz.com    True    002 AE  AHR EMPLR
3   E123459 Hazel   Tooley  tooleyh@xyz.com False   001 AE  AHR EMPLR …
Run Code Online (Sandbox Code Playgroud)

python json pandas

5
推荐指数
1
解决办法
588
查看次数

如何在特定位置向 PySpark 数据框添加多个空列

我尝试对此进行了大量研究,但我无法找到一种方法来执行并将多列添加到特定位置的 PySpark 数据框。

我有如下所示的数据框:

Customer_id   First_Name   Last_Name  
Run Code Online (Sandbox Code Playgroud)

我想在 3 个不同的位置添加 3 个空列,我最终生成的数据框需要如下所示:

Customer_id Address First_Name Email_address Last_Name Phone_no

有没有一种简单的方法可以解决它,就像你可以reindex在 python 上做的那样?

apache-spark pyspark

2
推荐指数
2
解决办法
7808
查看次数

自动将数据从 s3 批量加载到 Aurora MySQL RDS 实例

我对 AWS 比较陌生,所以我不知道如何去做,

我在 s3 上有 CSV 文件,并且已经在 RDS 上设置了 Aurora 实例。我无法弄清楚的是如何自动批量加载数据,本质上就像LOAD DATA FROM s3使用 AWS Glue 之类的东西一样。

我还使用了 s3 到 RDS 的 Glue 原生功能,但它本质上是通过 JDBC 连接向 RDS 进行一堆插入,这对于大型数据集来说也非常慢。

我可以在 RDS 上独立运行命令来完成此操作,但我不想这样做,而是想利用 Glue。我还考虑过使用适用于 Python 的 MySQL 连接器,但 Glue 本身仅支持 Python 2.7,这是我不想使用的东西。

任何帮助将不胜感激。

python mysql amazon-s3 amazon-web-services aws-glue

2
推荐指数
1
解决办法
6594
查看次数