I am following the tutorial but failed to build a linear regressor for a dataset generated on top of `y=x`. Here is the last part of my code, and you can find the [complete source code](https://github.com/biwa7636/tensorflow_studynote/blob/master/tensorflow_features.ipynb) here if you want to reproduce my error: 

```
_CSV_COLUMN_DEFAULTS = [[0],[0]]
_CSV_COLUMNS = ['x', 'y']

def input_fn(data_file):

    def parse_csv(value):
        print('Parsing', data_file)
        columns = tf.decode_csv(value, record_defaults=_CSV_COLUMN_DEFAULTS)
        features = dict(zip(_CSV_COLUMNS, columns))
        labels = features.pop('y')
        return features, labels

    # Extract lines from input files using the Dataset API.
    dataset = tf.data.TextLineDataset(data_file)
    dataset = dataset.map(parse_csv)

    iterator = dataset.make_one_shot_iterator()
    features, labels = iterator.get_next()
    return features, labels

x = tf.feature_column.numeric_column('x')
base_columns = [x]

model_dir = tempfile.mkdtemp()
model = tf.estimator.LinearRegressor(model_dir=model_dir,     feature_columns=base_columns)

model = model.train(input_fn=lambda: input_fn(data_file=file_path))

```

Somehow this code will fail with error message 

```
ValueError: Feature (key: x) cannot have rank 0. Give: Tensor("IteratorGetNext:0", shape=(), dtype=int32, device=/device:CPU:0)

```

Due to the nature of tensorflow, I found it a bit hard to inspect where it really went wrong based on the given message.