在 python 中使用 pandas 不需要的空数据框
Unwanted empty dataframe using pandas in python
我正在努力学习 python 现在整整 2 周。我遇到了一个我无法解决的问题。当我在互联网上看到示例时,这似乎很容易做到。尽管如此,我还是无法完成它。
我正在尝试从风速(第 5 列)获取信息并使用它的风站编号(第 0 列)。
我已经可以读取并打印文本文件了:
import pandas as pd
## data
os.chdir('C:\Users\########\sensoren\data')
os.getcwd()
wind = pd.read_csv('weerdata_299_235_242_251_267_277.txt', usecols= [0 ,5 ],skiprows = 33, names = ['STN','FF'])
print(wind)
giving the following results:
STN FF
0 229 60
1 229 60
2 229 60
3 229 60
4 229 30
... ...
62779 277 50
62780 277 50
62781 277 50
62782 277 60
62783 277 50
现在我只想获取包含 STN:277 的行的数据。我在哪里使用此代码:
wind_277 = wind[wind['STN'] == '277']
print(wind_277)
结果如下:
Empty DataFrame
Columns: [STN, FF]
Index: []
我不明白为什么这个 DataFrame 是空的。谁能帮我解决这个问题?
我的猜测是因为列 STN 是整数。检查数据类型。
print(wind.dtypes)
如果是整数则去掉277上的字符串注释
wind_277 = wind[wind['STN'] == 277]
但也许它是一个字符串,例如“277”,它有尾随空格。在这种情况下,您需要删除空格。
wind['STN'] = wind['STN'].str.strip()
我正在努力学习 python 现在整整 2 周。我遇到了一个我无法解决的问题。当我在互联网上看到示例时,这似乎很容易做到。尽管如此,我还是无法完成它。
我正在尝试从风速(第 5 列)获取信息并使用它的风站编号(第 0 列)。
我已经可以读取并打印文本文件了:
import pandas as pd
## data
os.chdir('C:\Users\########\sensoren\data')
os.getcwd()
wind = pd.read_csv('weerdata_299_235_242_251_267_277.txt', usecols= [0 ,5 ],skiprows = 33, names = ['STN','FF'])
print(wind)
giving the following results:
STN FF
0 229 60
1 229 60
2 229 60
3 229 60
4 229 30
... ...
62779 277 50
62780 277 50
62781 277 50
62782 277 60
62783 277 50
现在我只想获取包含 STN:277 的行的数据。我在哪里使用此代码:
wind_277 = wind[wind['STN'] == '277']
print(wind_277)
结果如下:
Empty DataFrame
Columns: [STN, FF]
Index: []
我不明白为什么这个 DataFrame 是空的。谁能帮我解决这个问题?
我的猜测是因为列 STN 是整数。检查数据类型。
print(wind.dtypes)
如果是整数则去掉277上的字符串注释
wind_277 = wind[wind['STN'] == 277]
但也许它是一个字符串,例如“277”,它有尾随空格。在这种情况下,您需要删除空格。
wind['STN'] = wind['STN'].str.strip()