数据分析

Posted maplethefox

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据分析相关的知识,希望对你有一定的参考价值。

最值

np.max() np.min() np.ptp(): 返回一个数组中最大值/最小值/极差 

import numpy as np
# 产生9个介于[10, 100)区间的随机数
a = np.random.randint(10, 100, 9)
print(a)
print(np.max(a), np.min(a), np.ptp(a))

# [92 12 30 22 37 76 85 56 66]
# 92 12 80

np.argmax() np.argmin(): 返回一个数组中最大/最小元素的下标

print(np.argmax(a), np.argmin(a))

# 0 1

np.maximum() np.minimum(): 将两个同维数组中对应元素中最大/最小元素构成一个新的数组

import numpy as np

# 产生9个介于[10, 100)区间的随机数
a = np.random.randint(10, 100, 9)
b = np.random.randint(10, 100, 9)
print(a)
# [13 59 93 98 53 50 12 73 51]
print(b)
# [34 90 68 84 46 99 74 11 70]
print(np.maximum(a, b))
# [34 90 93 98 53 99 74 73 70]
print(np.minimum(a, b))
# [13 59 68 84 46 50 12 11 51]

 

a=np.arange(1,10).reshape(3,3)
b = np.arange(1,10)[::-1].reshape(3,3)
print(np.maximum(a,b))
"""
[[9 8 7]
 [6 5 6]
 [7 8 9]]
"""
print(np.minimum(a,b))
"""
[[1 2 3]
 [4 5 4]
 [3 2 1]]
"""

案例:评估AAPL股票的波动性。

import numpy as np
import datetime as dt

def dmy2ymd(dmy):
  """
  把日月年转年月日
  :param day:
  :return:
  """
  dmy = str(dmy, encoding=utf-8)
  t = dt.datetime.strptime(dmy, %d-%m-%Y)
  s = t.date().strftime(%Y-%m-%d)
  return s


dates, opening_prices, highest_prices, lowest_prices, closing_prices ,volumes=   np.loadtxt(aapl.csv,
             delimiter=,,
             usecols=(1, 3, 4, 5, 6,7),
             unpack=True,
             dtype=M8[D],f8,f8,f8,f8,f8,
             converters=1: dmy2ymd)  # 日月年转年月日

#30天的最大震荡幅度
max_price = np.max(highest_prices)
min_price = np.min(lowest_prices)
print(min_price,~,max_price)
# 333.53 ~ 364.9

#哪一天是最高价,哪一天是最低价
max_ind = np.argmax(highest_prices)
min_ind = np.argmin(lowest_prices)
print(max,dates[max_ind])#max 2011-02-16
print(min,dates[min_ind])#min 2011-01-28

 

以上是关于数据分析的主要内容,如果未能解决你的问题,请参考以下文章

大数据分析一般用啥工具分析

大数据分析工具详尽介绍&数据分析算法

数据分析中如何清洗数据

大数据分析工具有哪些?

学数据分析与数据挖掘用啥技术

第一章数据分析介绍