Как сделать диаграмму рассеяния из таблицы - PullRequest
0 голосов
/ 17 декабря 2018

У меня есть несколько фреймов данных, как показано ниже.

import pandas as pd
import numpy as np
dfA={"1":np.random.rand(3)}
dfA=pd.DataFrame(dfA)
dfB={"2":np.random.rand(5)}
dfB=pd.DataFrame(dfB)
dfC={"3":np.random.rand(6)}
dfC=pd.DataFrame(dfC)

и я хочу объединить их, как показано ниже.

dfABC=pd.concat([dfA,dfB,dfC], join="outer")
print (dfABC)

Например, dfABC будет выглядеть следующим образом.(Я не уверен, почему «печать» не работает. Поэтому позвольте мне приложить рисунок.)

enter image description here

Ожидаемый результат будет таким.

enter image description here

Затем я хочу сделать точечный график для этой таблицы.Значения оси X составляют 1,2,3.Значения оси Y представляют собой dfA (когда x = 1), dfB (когда x = 2) и dfC (когда x = 3).Есть ли функция для создания диаграммы рассеяния из этой таблицы?Я погуглил его, но не смог его найти.

Кроме того, можно ли добавить линию тренда?В Excel эта диаграмма рассеяния проста, но я хочу использовать python, потому что фактический набор данных довольно большой.

Большое спасибо за вашу помощь.

1 Ответ

0 голосов
/ 17 декабря 2018

если я понимаю, следующее может быть хорошим решением для вас:

from matplotlib import pyplot as plt
import pandas as pd
import numpy as np

dfA={"1":np.random.rand(3)}
dfA=pd.DataFrame(dfA)
dfB={"2":np.random.rand(5)}
dfB=pd.DataFrame(dfB)
dfC={"3":np.random.rand(6)}
dfC=pd.DataFrame(dfC)

dfABC=pd.concat([dfA,dfB,dfC], join="outer")
print (dfABC)

for y in dfABC.columns:
    plt.scatter(dfABC[y].values, dfABC[y])
plt.show()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...