I took a run at this with the data provided, and some assumptions, and I think I'm close.
What I can't determine is where you're getting the other values from in your sample Table 2 - for example, nowhere in your source data does 'Betty' have a '82'. I'm assuming, for now, that this is just because you're showing a subset of the data.
Either way, using the sample data in Table 1, and creating a new Table 2, I came up with three formulas that result in a table that looks like:

The three magic formulae are:
A2:
=SORT(UNIQUE(TOCOL(FILTER(Table 1::B:C,Table 1::$A="Name",""))),1)
Starting from inside the parentheses, it performs a FILTER() on 'Table 1::B:C' to get a list of all the cells where Table 1::A is 'Name' - in other words, it extracts all the names from the table.
This is then run through TOCOL() to get a one-dimensional list of names.
This list is run through UNIQUE() to get a list of unique names
This list of unique names is then run through SORT() to sort them and ends up with the values in Table 2::A
A similar function is applied to B2 to get a list of unique dates:
=SORT(UNIQUE(TOROW(FILTER(Table 1::B:C,Table 1::$A="Date",""),1,TRUE),TRUE,FALSE),1,,TRUE)
It's a little more complicated since we use TOROW() to get a horizontal list of dates, rather than a vertical list, but the concept is the same - get all the 'date' cells, turn them into a single row, extract uniques and sort the result.
As long as Table 2 is large enough (has enough rows for all the unique names, and enough columns for all the unique dates), this should set your table headers up correctly.
Now comes the complex part - a formula that takes the name from column A, and the date from row 1 and finds the matching 'Place'.
(Note, my first pass here was overly complex, performing multiple LOOKUP()s and OFFSET()s, but eventually I settled on an easier path...)
Using a similar technique to getting the unique names and dates, it's easy to get a list of all names and all dates as listed in the source table. Create a third list of all the 'Placed 1', and you can easily perform a filter to get the answer you're looking for.
In Table 2::B2, set the formula to:
=IFERROR(
LET(
names,TOCOL(FILTER(Table 1::$B:$C,Table 1::$A="Name")),
dates,TOCOL(FILTER(Table 1::$B:$C,Table 1::$A="Date")),
places,TOCOL(FILTER(Table 1::$B:$C,Table 1::$A="Placed 1",)),
FILTER(places,(names=$A2)×(dates=B$1))
)
,"")
LET() allows you to run a formula and store its results in a variable for later use.
In this case, I create three variables, labelled 'names', 'dates' and 'places'. Each of these run a similar FILTER() against the source data to extract the relevant values.
This is done using the basic FILTER() as above, but without the UNIQUE() and SORT() values since I want all names and dates, including duplicates, in the order they appear on the source table.
Once I have those, I can simply FILTER() the places data to return only results where the name is the name in $A2 (i.e. 'Betty', in this case), and where the date is the value in B$1 (i.e. '8/17/25')
The LET() is wrapped in an IFERROR() function to catch cases where a runner didn't run/place on a given date.
The last step is to fill this formula across all the columns, and down all the rows, to cover all dates and runners.
Violà