我有一只DataFrame熊猫:
import pandas as pd
inp = [{'c1':10, 'c2':100}, {'c1':11,'c2':110}, {'c1':12,'c2':120}]
df = pd.DataFrame(inp)
print df
Run Code Online (Sandbox Code Playgroud)
输出:
c1 c2
0 10 100
1 11 110
2 12 120
Run Code Online (Sandbox Code Playgroud)
现在我想迭代这个帧的行.对于每一行,我希望能够通过列的名称访问其元素(单元格中的值).例如:
for row in df.rows:
print row['c1'], row['c2']
Run Code Online (Sandbox Code Playgroud)
是否有可能在熊猫中做到这一点?
我发现了类似的问题.但它没有给我我需要的答案.例如,建议使用:
for date, row in df.T.iteritems():
Run Code Online (Sandbox Code Playgroud)
要么
for row in df.iterrows():
Run Code Online (Sandbox Code Playgroud)
但我不明白row对象是什么以及如何使用它.
从字符串获取日期时间的函数datetime.strptime(date_string, format)需要字符串格式作为第二个参数.有没有办法从字符串构建日期时间而不知道确切的格式,并让Python最好猜测它?
认为这将是直接的,但在追踪优雅的方式来同时搜索数据框中的所有列以进行部分字符串匹配时遇到了一些麻烦.基本上我将如何同时应用于df['col1'].str.contains('^')整个数据框并过滤到包含匹配记录的任何行?