# Bias correction of a sampled igraph

Suppose I have a sample (S) of a graph where S is a subset of G -- the population Graph. Is there a way (theoretical) to compute for bias in the estimation of centralization (as in igraph::centr_degree(g)\$centralization) AND use this computed bias to correct my estimate?

Additional info: Suppose I used bootstrap graph samples (i.e. S*1,S*2, . . . ,S*n) and I know from my histogram of centralization from these samples that I am "far" from the population centralization. For illustration, a histogram of centralization is found below. Unfortunately, the population centralization is 0.011.

I assume that if by bias estimation you want to get the CI for certain network statistics. The problem here is that there are several methods and none seems to follow the other. The most common one is by bootstrapping. You resample your network, for example, if you have edges A - B, C - D, they will be reassigned to A - C, B - D, while keeping the degree distribution. Note that not always researchers keep the degree distribution, but so far I couldn't understand the reason why.

Then you just choose your statistic of interest, and log it for each iteration of your bootstrapping. In the end you should have your distribution.

Now the problem here is the following. How to resample/rewire the graph. You can't do as in "normal" bootstrapping, because a sample of your population would "destroy" some statistics, so you have to work with reshuffles/rewires of your network. However, igraph offers a function for that in R called rewire which can be paired with keeping_degseq. What I couldn't understand so far and that's still a question here is what does the parameter niter exactly does. Once that's clear then it shouldn't be difficult to compute for bias estimation.

• There should be no re-assigning if you save the edges as your observations. Give it an ID, and sample and re-sample these IDs. Then reconstruct using 'subset'. we should email each other. :) – Erwin Apr 4 '18 at 6:45
• @Erwin indeed. That would work for bootstrapping in the traditional sense of the word. However, you need something else for network measures as you need to capture your network structure for example by keeping degree distribution. And as stochastically independent generalised baseline models don't exist things get a bit more complicated. Not doing so and you have a rand net different from the empirical net. Unless I'm missing something. Check this article arxiv.org/abs/1201.2046. Feel free to mail me as well. You can find my details here github.com/FilipeamTeixeira. – FilipeTeixeira Apr 4 '18 at 10:23