% Author: Simon-Pierre Boucher — contact@spboucher.ai
%
%======================================================================
\section{Data} \label{sec:data}
%======================================================================

\subsection{Data Source and Sample Construction}

The dataset is drawn from a database of residential property listings in Quebec, Canada, collected from the Realtor.ca and Centris platforms. Realtor.ca is the public-facing portal of the Canadian Real Estate Association (CREA), and Centris is the Quebec-specific MLS (Multiple Listing Service) platform operated by the Qu\'ebec Professional Association of Real Estate Brokers (APCIQ). Together, these platforms cover the large majority of brokered residential listings in the province.

The full database contains 46,479 listings across five property categories: houses (17,089), condominiums (8,586), land (8,506), rentals (8,240), and multiplexes (4,058). For this study, we restrict the sample to single-family houses to maintain a homogeneous product category, following standard practice in the hedonic pricing literature \citep{sirmans2005composition}. After excluding listings with missing or uninformative descriptions (fewer than 20 characters) and non-positive prices, the final sample comprises 17,087 observations.

\subsection{Structural Variables}

Table~\ref{tab:descriptive} presents descriptive statistics for the structural and textual variables used in the hedonic models.

\input{tables/tab_descriptive}

The median listing price is \$589,900, with substantial right-skew (mean \$807,259, maximum \$25 million). The log transformation reduces this skewness considerably (log-price standard deviation of 0.70). The typical house has 3 bedrooms and 2 bathrooms (sample medians). The parking-spaces field averages 5.5 with high variance; it records the total number of parking spots reported by the agent, including driveway and outdoor spaces, which explains its large mean and range. The lot-size field is recorded without standardized units at the source and is correspondingly noisy---a limitation reflected in its imprecise coefficient estimate in the regressions. Listing descriptions average 510 characters (standard deviation of 151) and are truncated at approximately 700 characters in the data export, so the length variable is bounded from above.

Figure~\ref{fig:price_dist} displays the distributions of price and log-price, confirming the appropriateness of the semi-logarithmic specification.

\begin{figure}[!htbp]
\centering
\includegraphics[width=0.85\textwidth]{fig9_price_distribution.pdf}
\caption{Distribution of listing prices and log-prices ($n = 17{,}087$).}
\label{fig:price_dist}
\begin{minipage}{0.9\textwidth}
\footnotesize
Notes: Left panel shows the distribution of raw listing prices; right panel shows the distribution of log-transformed prices. The log transformation substantially reduces right-skewness.
\end{minipage}
\end{figure}

\subsection{Semantic Similarity Features}

Table~\ref{tab:sim_stats} reports the distribution of cosine similarity scores across the 20 reference dimensions, along with their bivariate correlations with log-price.

\input{tables/tab_similarity_stats}

A notable pattern in Table~\ref{tab:sim_stats} is that all bivariate correlations between similarity scores and log-price are negative, ranging from $-0.29$ to $-0.17$. This initially counterintuitive result arises because longer, more detailed descriptions---which characterize lower-priced listings where agents invest more effort in textual marketing---produce higher similarity scores with \textit{all} references. This confound is addressed in the multivariate regression by controlling for description length, after which the theoretically expected positive and negative effects of different qualitative dimensions emerge clearly.

Figure~\ref{fig:sim_dist} displays the distributions of cosine similarities, revealing substantial variation within each dimension.

\begin{figure}[!htbp]
\centering
\includegraphics[width=0.85\textwidth]{fig3_similarity_distributions.pdf}
\caption{Distribution of cosine similarity scores across 20 reference dimensions.}
\label{fig:sim_dist}
\begin{minipage}{0.9\textwidth}
\footnotesize
Notes: Each box plot displays the distribution of cosine similarity between listing embeddings and the corresponding reference description embedding, ordered by median similarity. Boxes span the interquartile range; whiskers extend to 1.5 times the interquartile range.
\end{minipage}
\end{figure}
