dimension reduction of discrete numerical data I have a bivariate discrete numerical dataset and would like to reduce its dimensions to a single variable.  A 9 x 8 table of counts of the (x,y) data values is:
     0  1  2  3  4  5  6 7
   -----------------------
8 | 10 38 58 79 50 19 15 1
7 | 22 61 67 86 43 19  7 0
6 | 44 70 44 44 19  6  2 0
5 | 45 33 29  8  5  2  1 0
4 | 62 15  8  4  1  0  1 0
3 | 12  6  7  2  2  1  0 0
2 |  1  2  1  0  0  0  0 0
1 |  3  0  0  0  0  0  0 0
0 | 10  2  2  0  1  0  0 0

Something that seems reasonable is to fit a  curve from (0,0) to (7,8) and project the data onto this [in the study (0,0) is least knowledgeable, (7,8) most knowledgeable].  The reduced variable would be the distance from (0,0) to (7,8) after projection.  Does anyone know how to do this?
The X variable is the sum of number of facts correctly recalled after reviewing some materials.
The Y variable is a sum of correct responses to TRUE/FALSE questions relating to those materials.
Another example of these type of data is the following
      0   1   2  3
     -------------
  8 | 5  82 143 37
  7 |21 139 163 23
  6 |23 122  86 15
  5 |17  63  29  6
  4 |21  29   8  1
  3 | 6  13   3  0
  2 | 3   4   2  0
  1 | 2   0   0  0
  0 | 4   0   0  0

in this case the X variable has values 0 to 3.
Suggestions for other methods also appreciated.
 A: Following the discussion in the comments above and your edits, it is clear that the data is not ordinal, but simply discrete. It makes everything rather easy: e.g. you can run the PCA.
In order to do that, you need to convert your count table into a data matrix with two columns (X and Y) and as many rows as you have observations (1070). I always prefer to look at a scatter plot before doing PCA; in this case scatter plot will be hard to interpret because almost all the points overlap, so a better way to plot it would be with some random jitter:

Now we see that the data points are obviously spread along the main diagonal. Indeed, PCA tells us that the first PC explains 72% of the total variance, and is pointing in the direction (0.69, 0.72). This is very close to the diagonal (0.71, 0.71), so you can as well take the diagonal itself.
Now you only need to project your data onto the first PC (or on the diagonal). Which in case of the diagonal is equivalent to taking the average between X and Y, as @NickCox suggested above. So if I were you, I would center the data (subtract mean X and mean Y) and take the average. But it would be a good idea to mention in the methods that the first PC was almost exactly the diagonal.
Update
@PaulM made a very good point in the comments: the square form of the grid might bias the covariance matrix towards the diagonal. Indeed, looking at these data, one might suspect that if the measurement scale (0-8) somehow had a broader range, then some of the points that fall on the boundaries of the square grid would actually be located further away from its centre. Constraining all the data points to the square grid can introduce a bias.
I think it is a valid concern, and I don't know a principled way to deal with it. However, I can suggest an ad-hoc method. Let us cut out chunks of the grid that have a form that is not diagonally elongated. A "cross" seems to be a natural choice: one could take 5 neighbouring grid positions that form a cross, but I decided to take 12 positions that form a larger cross (see figure below). It is easy to select points belonging to such a cross, as they have distance less than 2 to the centre of the cross, and all other grid locations are further away.
On the following picture I show 10 cross positions that I used (black dots), and the red circle shows the boundary for the first cross. [Note that blue points were jittered only for visualization, whereas all the analysis was done on the unjittered points.] For each cross I computed the PCA and plotted the direction of the first PC as a black line.

One can see that all black lines are roughly diagonal, confirming that the bias does not play a big role in the above conclusions.
Still, to try to correct the possible bias, one could take the average over the 10 "bootstrapped" PCs: (0.79, 0.61), which is 7.5 degrees below the diagonal, or maybe the weighted average with number of points in each cross serving as a weight: (0.80, 0.59), which is 8.5 degrees below.
