import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
data1=pd.read_csv('Stock_file_1.csv')
data2=pd.read_csv('stock_file_2.txt')
unique1,counts1=np.unique(data1['date'],return_counts=ture)
unique2,counts2=np.unique(data2['date'],return_counts=ture)
data_merged=pd.concat([data1,data2],axis=0,join='inner',ignore_index=true)
data_merged['Volume']=data_merged.volume.replace("zero",0)
data_merged['Volume']=data_merged.volume.astype(int)
data_merged.info()
data_merged.describe()
Data_merged['Volume']=data_merged['Volume'].map({843600:'model_good':'model_bad'})
data_merged['Volume']=data_merged['Volume'].astype('category')
print(data_merged.head())
import numpy as np
model_good=data_merged.loc[data_merged['Volume']=='model_good']
model_bad=data_merged.loc[data_merged['Volume']=='model_bad']
plt.figure(1,figsize=(14,4))
plt.subplot(121)
plt.plot(model_good["open"],np.zeros_like(model_good['open']),'o',label="model_good")
plt.plot(model_good["open"],np.zeros_like(model_bad['open']),'o',label="model_bad")
plt.legend()
plt.xlabel('open')
plt.title('volume based on open')
plt.show()
plt.subplot(122)
plt.plot(model_good["close"],np.zeros_like(model_good['close']),'o',label="model_good")
plt.plot(model_good["close"],np.zeros_like(model_bad['close']),'o',label="model_bad")
plt.legend()
plt.xlabel('close')
plt.title('volume based on close')
plt.show()
import numpy as np
model_good=data_merged.loc[data_merged.loc[data_merged['volume']=='model_good']
model_bad=data_merged.loc[data_merged.loc[data_merged['volume']=='model_bad']
plt.figure(1,figsize=(14,4))
plt.subplot(121)
plt.plot(model_good["high"],np.zero_like(model_good['high']),'o',label="model_good")
plt.plot(model_bad["high"],np.zero_like(model_bad['high']),'o',label="model_bad")
plt.legend()
plt.xlabel('High')
plt.title('volume based on High')
plt.show()
plt.subplot(122)
plt.plot(model_good["low"],np.zeros_like(model_good['Low']),'o',label="model_good")
plt.plot(model_bad["low"],np.zeros_like(model_bad['Low']),'o',label="model_bad")
plt.legend()
plt.xlabel('low')
plt.show()
sns.FacetGrid(data_merged,hue='Volume",size=5).map(sns.distplot,"Close").add_legend()
plt.title('histogram for Volume based on Close')
plt.show()
sns.FacetGrid(data_merged,hue='Volume",size=5).map(sns.distplot,"high").add_legend()
plt.title('histogram for Volume based on high')
plt.show()
df = data_merged
stats_df = df.group_df=df.groupby('open')['open'].agg('count').pipe(pd.dataframe).rename(columns={'open': 'Close'})
stats_df['pdf']=stats_dc['close]/sum(stats_df['Close'])
stats_df['cdf']=stats_df['pdf'].cumsum()
stats_df= stats_df.reset_index()
stats_df
s=pd.Series(np.random.normal(loc=10, scale=0.1,size=300),name='open')
stats_df.plot(x='open',y = ['pdf,'cdf'],grid = true)
s=pd.Series(np.random.normal(loc=10, scale=0.1,size=300),name='close')
stats_df.plot(x='open',y = ['pdf,'cdf'],grid = true)
sns.boxplot(x='Volume',y='Open' ,data=data_merged)
plt.title('box_plot based on Open')
plt.show()
sns.boxplot(x='volume',y='High' ,data=data_merged)
plt.title('box_plot based on High')
plt.show()
sns.boxplot(x='volume',y='open' ,data=data_merged,size=8)
plt.title('box_plot based on open')
sns.boxplot(x='volume',y='close' ,data=data_merged,size=8)
plt.title('box_plot based on close')
sns.set_style('whitegrid')
sns.Facetgrid(data_merged,hue="Volume",vars=['open','close'],size=4)
plt.show()
sns.jointplot(x="open",y="close",data=data_merged,kind="kde")
plt.title(contour plot Open vs Close')
plt.show()