Как мне изменить эти данные, чтобы использовать Plotly - PullRequest
1 голос
/ 27 марта 2020

Я пытаюсь использовать Plotly express для отображения данных во фрейме данных. Проблема состоит в том, что данные поступают в широком формате с местоположениями («Страна», «Штат»), поскольку индексы строк и столбцы являются отдельными датами во временном ряду. У меня проблемы с получением данных в длинном формате.

импорт plotly.graph_objects как go импорт плотно. express как px импорт numpy как np импорт pandas как pd

# Create the data frame
nam = ['Country','State']
tups = [('US', 'Westchester County, NY'),
    ( 'US', 'King County, WA'),
    ( 'US', 'Diamond Princess'),
    ('US', 'Santa Clara County, CA'),
    ( 'US', 'Snohomish County, WA'),
    ('China','Hubei'),
    ('China', 'Anhui'),
    ('China', 'Heibei'),
    ('China', 'Fujian'),
    ('China', 'Beiijing')]

cols=['3/4/20', '3/5/20', '3/6/20', '3/7/20', '3/8/20', '3/9/20', '3/10/20',
       '3/11/20', '3/12/20', '3/13/20']

a=np.random.random([10])+2
b=np.arange(0,10)
c=np.outer(a,b)


idx = pd.MultiIndex.from_tuples(tups)
samp = pd.DataFrame(data = c,columns = cols,index=idx)                    
samp.index.names=nam       

samp
# fig = px.line( x='Date', y='values')
# fig.show()

Я могу транспонировать данные, чтобы получить даты как индекс строки, но сюжетно не нравится.

Спасибо, Крис

1 Ответ

0 голосов
/ 27 марта 2020

это работа, которую DataFrame.melt () может обработать!

samp.reset_index().melt(id_vars=['Country','State'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...