您可以使用pandas.DataFrame.loc 或pandas.DataFrame.iloc。请参阅下面的示例。
import pandas as pd
d = [{'a': 1, 'b': 2, 'c': 3, 'd': 4},
{'a': 100, 'b': 200, 'c': 300, 'd': 400},
{'a': 1000, 'b': 2000, 'c': 3000, 'd': 4000 },
{'a': 1500, 'b': 2500, 'c': 3500, 'd': 4500}]
df = pd.DataFrame(d)
print(df) # Print original dataframe
print(df.loc[1:2]) # Print rows with index 1 and 2, (method 1)
print(df.iloc[1:3]) # Print rows with index 1 and 2, (method 2)
原始数据框:print(df) 将打印:
a b c d
0 1 2 3 4
1 100 200 300 400
2 1000 2000 3000 4000
3 1500 2500 3500 4500
和print(df.loc[1:2]) 按标签选择索引:
a b c d
1 100 200 300 400
2 1000 2000 3000 4000
和print(df.iloc[1:3]) 用于按整数选择行。正如 ALollz 所说,行被视为从 0 到 len(df) 的数字:
a b c d
1 100 200 300 400
2 1000 2000 3000 4000
经验法则可能是:
请注意,.loc 中切片的 end 值包括在内。 .iloc 和一般的 Python 切片都不是这种情况。
一般的熊猫
Pandas 有“简单”的方式来做各种类似的事情。如果您认为处理表格数据时遇到问题很常见,请在自己发明之前尝试搜索 pandas 的方法来完成它。与我们自己编写的相比,Pandas 几乎总是有一种语法简洁且计算速度更快的做事方式。