What is the matrix of a CFrame

Hi I need clarification on my knowledge of CFrames and would like some one to correct me if I am wrong. i would also like some one to explain or show me how I would be able to rotate a part 45 or 90 degrees for example using the matrix of CFrame instead of CFrame.Angles.
So my knowledge of the matrix is this thus far: the 9 numbers after the first 3 are the numbers that make up the rotation aspect of the CFrame. The 9 numbers are just 3 vectors that describe the direction the face of that respective vector is facing?. So if I had:

part.CFrame = CFrame.new(5, 10, 7, 1, 0, 0, 0, 1, 0, 0, 0, 1)

from my understanding the second “1” in this CFrame is the y component of the vector of the “up face” of the part. and the other “1’s” also represent their respective vector and face. but I don’t know how to rotate apart by a certain amount?. and are the values of the vectors radians, degrees or a magnitude?, because I never observe them to go a higher interger than 1. help would be appreciated because this isn’t explained well enough in the dev hub

I recommend you to read this through: CFrames | Roblox Creator Documentation. CFrame is made in such a way that you usually do not have to worry about the mathematically advanced parts. For instance, I do not have to use rotation matrices, cause I can just use CFrame:VectorToObjectSpace() or CFrame * CFrame.Angles(math.pi, 0, 0). Angles are in radians by the way, hence math.pi.

A deep understanding of CFrame requires knowledge of matrices, vectors and rotation matrices.