Comment lire un fichier csv à partir d'un compartiment s3 à l'aide de Pandas en Python

Je suis en train de lire un fichier CSV situé dans un seau AWS S3 dans la mémoire comme un des pandas dataframe en utilisant le code suivant:

import pandas as pd
import boto

data = pd.read_csv('s3:/example_bucket.s3-website-ap-southeast-2.amazonaws.com/data_1.csv')

Afin de donner un accès complet, j'ai mis le seau de la politique sur le compartiment S3 comme suit:

{
"Version": "2012-10-17",
"Id": "statement1",
"Statement": [
    {
        "Sid": "statement1",
        "Effect": "Allow",
        "Principal": "*",
        "Action": "s3:*",
        "Resource": "arn:aws:s3:::example_bucket"
    }
]

}

Malheureusement, je reçois toujours le message d'erreur suivant en python:

boto.exception.S3ResponseError: S3ResponseError: 405 Method Not Allowed

Demandais si quelqu'un pourrait aider à expliquer comment les définir correctement les autorisations dans AWS S3 ou configurer les pandas correctement pour importer le fichier. Merci!

Ne devrait-il pas être une double barre oblique après le s3?
oui, vous avez raison, il devrait y être. J'ai aussi dû changer l'emplacement du seau et fichier: tripData = pd.read_csv('htps://s3-ap-sud-est-2.amazonaws.com/example_bucket/données.csv'). et j'ai eu à mettre à jour les autorisations sur le fichier individuel. mais il fonctionne maintenant. des acclamations.
S'il vous plaît ajouter votre solution comme une Réponse à l'aide d'autres Stackoverflow utilisateurs.
Lors de l'utilisation de read_csv de lire des fichiers à partir de s3, ne pandas première téléchargements localement sur le disque et charger en mémoire? Ou faut-il le flux à partir du réseau directement dans la mémoire?

OriginalL'auteur Paul_M | 2015-06-13