2017-12-27 4 views
-1

파이썬 팬더를 사용하여 poloniex API에서 통화 쌍을 추출하려고합니다.Pandas DF 열에서 데이터/문자열 추출 중

Columns: [{"BTC_BCN":{"BTC":"479.74697466", "BCN":"1087153595.32266165"}, "BTC_BELA":{"BTC":"32.92293515", "BELA":"1807337.13247948"}, "BTC_BLK":{"BTC":"25.70374054", "BLK":"606717.86348734"}, "BTC_BTCD":{"BTC":"24.32220571", "BTCD":"1264.02352237"}, "BTC_BTM":{"BTC":"11.57816905", "BTM":"80673.47934437"}, "BTC_BTS":{"BTC":"1102.88787610", "BTS":"30426626.64558044"} 

내가 원하는 결과 :

나는 반환 된 데이터는 모두 단 하나의 열 이름이라고 생각 ... BTC_BCN, BTC_BELA, BTC_BLK,

그러나 얻을 수있는 간단한 방법이 있는지 정말 확실하지 이것들은 모두 문자열 이름처럼 보이기 때문에 문자열 파싱을하지 않아도됩니다.

코드 :

from bs4 import BeautifulSoup 
import csv 
import urllib2 
import pandas as pd 
try: 
    from StringIO import StringIO 
except: 
    from io import StringIO 



sock= urllib2.urlopen('https://poloniex.com/public?command=return24hVolume') 
link=sock.read() 
soup = BeautifulSoup(link,'lxml') 
csv_data = StringIO(soup.text) 

df=pd.read_csv(csv_data,delimiter=' *, *',engine='python') 
df2=df.iloc[1:2,0:20] 
+1

당신은'리스트 (df.columns) 할 수있는 열 이름을 얻기 위해 ' – furas

+0

목록 (df.keys는()) 작동하는 것 같다. –

답변

0

당신은 모두 여기에 BeautifulSoup 필요하지 않습니다. 웹 페이지의 내용은 JSON입니다 - 직접 .read_json()로 구문 분석 :

df = pd.read_json('https://poloniex.com/public?command=return24hVolume') 
관련 문제