For your purposes may be this dataset is sufficient: http://headers.electrum.org/blockchain_headers
It spans from block 0 to 477636 (2017-07-26 09:03 (just 9 months ago)) and contains just the block headers.
It is binary, but can be easily converted to a csv ASCII file with this Python script:
#!/usr/bin/env python
# convert binary file http://headers.electrum.org/blockchain_headers
# to CSV ASCII
import binascii
STRUCT_OF_BLOCK = [ 4, 32, 32, 4, 4, 4 ] # blockchain_headers does not contain always "0x00" txn_count
BLOCK_SIZE = sum(STRUCT_OF_BLOCK)
FILE_OUT= open('blockchain_headers.csv','w')
FILE_OUT.write( "version,prev_block,merkle_root,timestamp,bits,nonce,txn_count\n" )
with open('blockchain_headers','rb') as FILE:
block = FILE.read(BLOCK_SIZE)
while block != b'':
position = 0
for i in STRUCT_OF_BLOCK:
FILE_OUT.write( bytearray(binascii.hexlify( block[position:(position+i)][::-1] )).decode('ascii') + ',')
position += i
if position >= BLOCK_SIZE:
FILE_OUT.write("00\n") # blockchain_headers does not contain always "0x00" txn_count
block = FILE.read(BLOCK_SIZE)