我有几个列表:
import React, { useReducer } from "react";
import "./styles.css";
const USER_UPDATE = "USER_UPDATE";
const ADD_USER = "ADD_USER";
const REMOVE_USER = "REMOVE_USER";
const FILTER_USER = "FILTER_USER";
const initState = { users: [], user: "" };
const reducer = (state, action) => {
switch (action.type) {
case FILTER_USER:
return {
...state,
users: state.users.filter(
user =>
user.toLowerCase().indexOf(action.payload.toLowerCase()) !== -1
)
};
default:
return state;
}
};
export default function App() {
const [state, dispatch] = useReducer(reducer, initState);
const userUpdate = e => {
const { value } = e.target;
dispatch({ type: USER_UPDATE, payload: value });
};
const addNewUser = () => dispatch({ type: ADD_USER });
const removeUser = i => dispatch({ type: REMOVE_USER, payload: i });
const handleFilter = e =>
dispatch({ type: FILTER_USER, payload: e.target.value });
const renderUsers = state.users.map((user, i) => (
<li
key={i}
>
<button
onClick={() => removeUser(i)}
>
x
</button>
<p style={{}}>{user}</p>
</li>
));
return (
<div className="App">
<pre>{state.user}</pre>
<input placeholder="Enter a name" onChange={userUpdate} />
<button onClick={addNewUser}>Add</button>
<hr />
<input placeholder="Filter name" onChange={handleFilter} />
<ul style={{ listStyle: "none" }}>{renderUsers}</ul>
</div>
);
}
我想要一个3列的数据框,它使用列表的名称自动命名
a = [1, 2, 3, 4]
b = [5, 6, 7, 8]
c = [7, 8, 9, 10]
如何执行此操作?谢谢。
答案 0 :(得分:1)
您可以使用以下代码从列表创建Pandas DataFrame:
import pandas as pd
a = [1, 2, 3, 4]
b = [5, 6, 7, 8]
c = [7, 8, 9, 10]
df = pd.DataFrame(list(zip(a, b, c)),
columns =['a', 'b', 'c'])
print(df)
希望这会有所帮助!