In [1]:
from pathlib import Path
from astropy.table import Table

from telescopeSchedule import get_telsched

In [20]:
def site_table(ndays=5):
    sched = get_telsched(from_date=None, ndays=ndays, telnr=None)

    site_list = ['HQ']
    site_list.extend( sorted(['ANU', 'CIT', 'UCB', 'UCD', 'UCLA', 'UCSD', 'UCI', 'UCR', 'Yale',
                        'USRA', 'NU', 'IfA', 'Stanford', 'Swinburne', 'UCSB', 'UCSC']) )
    site_list.append('Other')

    t = Table(names=['Run'] + site_list,
              dtype=['a40'] + ['a100']*len(site_list))

    for prog in sched:
        row = {site: '' for site in site_list}
        row['Run'] = f"{prog['Date']} {prog['TelNr']} ({prog['ProjCode']})"
        tonights_observers = prog['Observers'].split(',')
        tonights_sites = prog['Location'].split(',')
        for obs,s in zip(tonights_observers, tonights_sites):
            if s in row.keys():
                row[s] += f"{obs}, "
            else:
                row['Other'] += f"{obs}, "
        for site in site_list:
            if row[site] != '':
                nobs = len(row[site].split(',')) - 1
                row[site] = row[site].strip(', ')
                row[site] += f' ({nobs})'
        t.add_row(row)

    return t

In [22]:
site_table(ndays=5)


Out[22]:
Table length=16
RunHQANUCITIfANUStanfordSwinburneUCBUCDUCIUCLAUCRUCSBUCSCUCSDUSRAYaleOther
bytes40bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100bytes100
2020-03-10 1 (H277)Lemaux, Pelliccia (2)
2020-03-10 1 (N028)Topping, Runco, Pahl (3)Shapley (1)
2020-03-10 2 (K300)Alvarez (1)
2020-03-10 2 (E339)Ragland (1)
2020-03-11 1 (S322)Shimakawa, Onodera (2)
2020-03-11 1 (N028)Topping, Runco, Pahl (3)Shapley (1)
2020-03-11 2 (C197)Buzard, Camarca, Wallack (3)
2020-03-11 2 (E350)Ragland (1)
2020-03-11 2 (E341)Ragland (1)
2020-03-12 1 (S322)Shimakawa, Onodera (2)
2020-03-12 1 (U169)Topping, Runco, Pahl (3)Shapley (1)
2020-03-12 2 (U149)Theissen, Aganze, Hsu, Gerasimov (4)
2020-03-13 1 (C206)Scoville, Darvish Sarvestani, Faisst (3)
2020-03-13 2 (H311)Liu (1)
2020-03-14 1 (C206)Scoville, Darvish Sarvestani, Faisst (3)
2020-03-14 2 (U010)Martin (1)

In [ ]: