On 28/09/2017 11:46, Peter Otten wrote:
larrystale...@comcast.net wrote:

I am very new to Python and appreciate the input as I was able to fully
install Python with all needed libraries (i.e., numpy, pandas, etc.).
However, I now have an application question in needed to construct a 2D
Histogram.

Basically, I have an Excel file that includes three columns:
Column 1 - Gender (Male or Female)
Column 2 - Height (in inches)
Column 3 - Hand Span (in inches)

I have yet to grok your code samples, but my feeling is that your approach
is too low-level. Do you mean something like

http://matplotlib.org/examples/pylab_examples/hist2d_demo.html

by "2d histograms"? That would require very little code written by yourself:

import pandas as pd
from matplotlib import pyplot

filename = "size.xls"
sheetname = "first"

data = pd.read_excel(filename, sheetname)

for index, sex in enumerate(["female", "male"], 1):
     pyplot.figure(index)
     subset = data[data["Gender"] == sex]
     pyplot.hist2d(subset["Height"].values, subset["Hand Span"].values)

pyplot.show()




data=readExcel(excelfile)
X=np.array(data[:,1],dtype=float);
S=np.array(data[:,2],dtype=float);
T=np.array(data[:,0],dtype=str);




Finally, is my intended coding for the actual 2D histogram. I will get min
and max from the height and hand span arrays. Note I am still learning
Python and looping is new to me:




# Define histogram classifier to build histogram using two variables
def Build1DHistogramClassifier(X, S, smin, smax,T,B,xmin,xmax):
HF=np.zeros(B).astype('int32');
HM=np.zeros(B).astype('int32');
binindices1=(np.round(((B-1)*(X-xmin)/(xmax-xmin)))).astype('int32');
binindices2=(np.round(((B-1)*(S-smin)/(smax-smin)))).astype('int32');
for i,b in enumerate(binindices1):
for i,c in enumerate(bindindices2):
if T[i]=='Female':
HF[b,c]+=1;
else:
HM[b,c]+=1;
return [HF, HM]

Hi,

I have a similar problem, but my data is not in excel but is in OpenOffice "Spreadsheet', but not in "Database".

My question is can I use a similar simple procedure as that given by Peter Otten.

Ta muchly.



--
Sydney
_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

Reply via email to