3

我想对我们如何访问变量值进行一些教育(使用变量名观察文件中的特定变量。

所以我的问题是:

假设我有一个包含四个变量和以下示例数据的文件。

ID  Name   Marks  Rank
1   Tom     76      3
2   Dick    95      2
3   Harry   97      1

现在不是通过首先使用 fob.readline() 方法删除第一行(变量名称)然后使用 for 循环迭代剩余行来访问上面每个变量的数据值,我想使用文件中存在的变量名称访问该变量的值。

因此,如果我想从变量 ID 访问“1”,我们可以通过使用某种函数/方法或方法在此处使用变量名称 ID 来实现吗?

我想我想找出的是,不是读取数据文件的每一行并将其存储为列表,是否可以仅使用该数据的变量名访问数据文件中的观察/记录?

就像在 SAS 或其他统计工具中一样,如果我在 SAS 数据步骤中使用变量名称,我们可以访问每个观察值的该变量的值。那么是否可以使用变量名访问变量的值?像 ID[0] 、 ID[1] 等或任何类似的东西都可以给我们该变量中的每个观察值?我知道 ID[0]、ID[1] 等不起作用,但这可能会使我的要求有所偏差。

这实际上很有帮助,因为在具有许多变量的文件中,我们可能希望使用变量名来访问该文件中的数据值,以防我们对该数据运行任何算法。

4

1 回答 1

2

鉴于您的文件确实看起来像

ID  Name   Marks  Rank
1   Tom     76      3
2   Dick    95      2
3   Harry   97      1

你可以创建一个DataFramewith Pandasread_csv函数:

data = read_csv('your_data.txt', sep=r'\s+')

现在您可以通过简单的方式访问这些值

>>> data
   ID   Name  Marks  Rank
0   1    Tom     76     3
1   2   Dick     95     2
2   3  Harry     97     1
>>> data.Marks
0    76
1    95
2    97
Name: Marks
>>> data.Name[2]
'Harry'
于 2013-10-01T12:38:42.440 回答