問題:現有100萬的追加投資,投資候選物件為三家商鋪,要求分析投資哪家商鋪更合適。
思路:投資商鋪要從盈利能力,盈利穩定性等方面分析。
已經獲得三家商鋪近7個月的利潤資料。
1、匯入分析需要的庫和設定相關引數。
import
numpy
as
np
import
pandas
as
pd
import
matplotlib。pyplot
as
plt
%
matplotlib
inline
from
pylab
import
*
mpl
。
rcParams
[
‘font。sans-serif’
]
=
[
‘SimHei’
]
plt
。
style
。
use
(
‘ggplot’
)
2、讀取資料,檢視資料。
df
=
pd
。
read_excel
(
r
‘C:\Users\Thinkpad\Desktop\sp17。xlsx’
)
df
資料如下:
3、進行描述統計,python中很方便,直接用describe函式。
des
=
df
。
ix
[:,
1
:
4
]
。
describe
()
。
applymap
(
lambda
x
:
round
(
x
,
2
))
df
。
ix
[:,
1
:
4
]
。
boxplot
()
#做箱線圖
des
描述統計結果
mean為平均值,std為方差,下邊為分位數。
表格顯示不直觀,箱線圖可直觀反應資料情況。
根據圖表情況,可見,商鋪1平均盈利最高,但波動較大,整體態勢良好;商鋪2平均盈利最差,波動也較大;商鋪三盈利較好,且十分穩定。
因此,如若追求最大化收益投資商鋪1,追求穩定,則投資商鋪3,商鋪2不建議投資。
此外,還可以透過標準分對排名進行分析。
為了使用廣播功能方便分析,轉換成numpy陣列進行相關計算。
arr
=
np
。
array
(
df
。
ix
[:,
1
:
4
])
#轉換成陣列
arr_mean
=
np
。
array
(
des
[
1
:
2
])
arr_std
=
np
。
array
(
des
[
2
:
3
])
df_sts
=
pd
。
DataFrame
(((
arr
-
arr_mean
)
/
arr_std
),
index
=
[
1
,
2
,
3
,
4
,
5
,
6
,
7
],
columns
=
[
u
‘商鋪1’
,
u
‘商鋪2’
,
u
‘商鋪3’
])
。
applymap
(
lambda
x
:
round
(
x
,
2
))
df_sts
可見五月份是 商鋪1 和 商鋪3 的盈利高峰,二月份是 商鋪2 的盈利高峰。
資料鏈接:
http://
pan。baidu。com/s/1dFev5W
t